From 249965df5ce5ec75aa77dd528591dd1579724acd Mon Sep 17 00:00:00 2001 From: Hillel Coren Date: Thu, 8 Dec 2016 22:51:53 +0200 Subject: [PATCH] CRUD --- app/Console/Commands/MakeModule.php | 2 +- app/Console/Commands/stubs/controller.stub | 15 +++++++++++---- app/Http/Requests/EntityRequest.php | 13 +++++++------ app/Libraries/Utils.php | 5 ----- 4 files changed, 19 insertions(+), 16 deletions(-) diff --git a/app/Console/Commands/MakeModule.php b/app/Console/Commands/MakeModule.php index e9de9e203556..ce1a310adbea 100644 --- a/app/Console/Commands/MakeModule.php +++ b/app/Console/Commands/MakeModule.php @@ -58,7 +58,7 @@ class MakeModule extends Command Artisan::call('ninja:make-class', ['name' => $name, 'module' => $name, 'class' => 'request']); Artisan::call('ninja:make-class', ['name' => $name, 'module' => $name, 'class' => 'request', 'prefix' => 'create']); - Artisan::call('ninja:make-class', ['name' => $name, 'module' => $name, 'class' => 'request', 'prefix' => 'edit']); + Artisan::call('ninja:make-class', ['name' => $name, 'module' => $name, 'class' => 'request', 'prefix' => 'update']); Artisan::call('module:dump'); } diff --git a/app/Console/Commands/stubs/controller.stub b/app/Console/Commands/stubs/controller.stub index 5a7c2ef31cde..d22b55a494c0 100755 --- a/app/Console/Commands/stubs/controller.stub +++ b/app/Console/Commands/stubs/controller.stub @@ -10,6 +10,9 @@ use App\Http\Controllers\BaseController; use App\Services\DatatableService; use Modules\$STUDLY_NAME$\Repositories\$STUDLY_NAME$Repository; use Modules\$STUDLY_NAME$\Datatables\$STUDLY_NAME$Datatable; +use Modules\$STUDLY_NAME$\Http\Requests\$STUDLY_NAME$Request; +use Modules\$STUDLY_NAME$\Http\Requests\Create$STUDLY_NAME$Request; +use Modules\$STUDLY_NAME$\Http\Requests\Update$STUDLY_NAME$Request; class $CLASS$ extends BaseController { @@ -51,7 +54,7 @@ class $CLASS$ extends BaseController * Show the form for creating a new resource. * @return Response */ - public function create() + public function create($STUDLY_NAME$Request $request) { $data = [ '$LOWER_NAME$' => null, @@ -68,7 +71,7 @@ class $CLASS$ extends BaseController * @param Request $request * @return Response */ - public function store(Request $request) + public function store(Create$STUDLY_NAME$Request $request) { $$LOWER_NAME$ = $this->$LOWER_NAME$Repo->save($request->input()); @@ -98,7 +101,7 @@ class $CLASS$ extends BaseController * Show the form for editing a resource. * @return Response */ - public function show(Request $request) + public function show($STUDLY_NAME$Request $request) { return redirect()->to("$LOWER_NAME$/{$request->$LOWER_NAME$}/edit"); } @@ -108,8 +111,12 @@ class $CLASS$ extends BaseController * @param Request $request * @return Response */ - public function update(Request $request) + public function update(Update$STUDLY_NAME$Request $request) { + $$LOWER_NAME$ = $this->$LOWER_NAME$Repo->save($request->input(), $request->entity()); + + return redirect()->to($$LOWER_NAME$->present()->editUrl) + ->with('message', trans('texts.updated_$LOWER_NAME$')); } /** diff --git a/app/Http/Requests/EntityRequest.php b/app/Http/Requests/EntityRequest.php index 88ba623d03ea..f9add11ea5a0 100644 --- a/app/Http/Requests/EntityRequest.php +++ b/app/Http/Requests/EntityRequest.php @@ -3,6 +3,7 @@ use Input; use Utils; use App\Libraries\HistoryUtils; +use App\Models\EntityModel; class EntityRequest extends Request { @@ -34,13 +35,13 @@ class EntityRequest extends Request { return null; } - $class = Utils::getEntityClass($this->entityType); + $class = EntityModel::getClassName($this->entityType); - if (method_exists($class, 'trashed')) { - $this->entity = $class::scope($publicId)->withTrashed()->firstOrFail(); - } else { - $this->entity = $class::scope($publicId)->firstOrFail(); - } + if (method_exists($class, 'trashed')) { + $this->entity = $class::scope($publicId)->withTrashed()->firstOrFail(); + } else { + $this->entity = $class::scope($publicId)->firstOrFail(); + } return $this->entity; } diff --git a/app/Libraries/Utils.php b/app/Libraries/Utils.php index f76895163ad1..bbcef931ec85 100644 --- a/app/Libraries/Utils.php +++ b/app/Libraries/Utils.php @@ -714,11 +714,6 @@ class Utils return $year + $offset; } - public static function getEntityClass($entityType) - { - return 'App\\Models\\' . static::getEntityName($entityType); - } - public static function getEntityName($entityType) { return ucwords(Utils::toCamelCase($entityType));