2017 © Pedro Peláez
 

library response-generate

it will add generate:response command to help you in scaffolding response classes

image

te7a-houdini/response-generate

it will add generate:response command to help you in scaffolding response classes

  • Saturday, September 2, 2017
  • by Te7a-Houdini
  • Repository
  • 1 Watchers
  • 2 Stars
  • 3 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 3 Versions
  • 0 % Grown

The README.md

Generate Response Class

This package allows you to generate a class that implements Responsable Interface, (*1)

Installation

it can be used in Laravel 5.5 or higher, (*2)

You can install the package via composer:, (*3)

``` bash composer require te7a-houdini/response-generate, (*4)


In Laravel 5.5 the service provider will automatically get registered. so you don't have to register the provider in `config/app.php` ## Usage `php artisan generate:response ExampleResponse` you will find a new class created under `App\Http\Responses` namespace which will look like ```php namespace App\Http\Responses; use Illuminate\Contracts\Support\Responsable; class ExampleResponse implements Responsable { /** * Create an HTTP response that represents the object. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function toResponse($request) { } }

Example

lets say in your controller you are doing something like that, (*5)

public function show($id)
{
    $post = Post::find($id);

    if (request()->ajax)
    {
        return response()->json(['data' => $post]);
    }

    else
    {
        return view('posts.show',compact('post'));
    }
}

by using the new generated response class we can do that, (*6)

public function show($id)
{
    $post = Post::find($id);

    return new PostResponse($post);
}
class PostResponse implements Responsable
{   
    protected $post;

    public function __construct ($post)
    {
        $this->post = $post;
    }

    /**
     * Create an HTTP response that represents the object.
     *
     * @param  \Illuminate\Http\Request $request
     * @return \Illuminate\Http\Response
     */
    public function toResponse($request)
    {
        if ($request->ajax())
        {
            return response()->json(['data' => $this->post]);
        }
        else
        {
            return view('posts.show',$post);
        }
    }
}

Credits

Resources

License

The MIT License (MIT). Please see License File for more information., (*7)

The Versions

02/09 2017

dev-master

9999999-dev

it will add generate:response command to help you in scaffolding response classes

  Sources   Download

MIT

The Requires

 

by Ahmed-Te7a

laravel response te7a-houdini

02/09 2017

1.0.1

1.0.1.0

it will add generate:response command to help you in scaffolding response classes

  Sources   Download

MIT

The Requires

 

by Ahmed-Te7a

laravel response te7a-houdini

02/09 2017

1.0.0

1.0.0.0

it will add generate:response command to help you in scaffolding response classes

  Sources   Download

MIT

The Requires

 

by Ahmed-Te7a

laravel response te7a-houdini