FEATURE #2520: add commands for creating new migration and running migrations in modules
This commit is contained in:
@@ -0,0 +1,103 @@
|
||||
<?php
|
||||
|
||||
namespace Modules\$ModuleNamespace$\Http\Controllers\Admin;
|
||||
|
||||
use App\Http\Controllers\Admin\Controller;
|
||||
use Modules\$ModuleNamespace$\Http\Requests\Update$Entity$;
|
||||
use Modules\$ModuleNamespace$\Http\Requests\Create$Entity$;
|
||||
use Modules\$ModuleNamespace$\Repositories\$Module$Repository;
|
||||
use $EntityNamespace$$Entity$ as $Entity$Entity;
|
||||
|
||||
class $Module$ extends Controller
|
||||
{
|
||||
/**
|
||||
* @var $Module$Repository
|
||||
*/
|
||||
private $$module$Repository;
|
||||
|
||||
public function __construct($Module$Repository $$module$Repository)
|
||||
{
|
||||
$this->$module$Repository = $$module$Repository;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
$items = $Entity$Entity::all();
|
||||
|
||||
return view('$module$::admin/index', compact('items'));
|
||||
}
|
||||
|
||||
/**
|
||||
* Display form for updating entity
|
||||
*
|
||||
* @param $Entity$Entity $entity
|
||||
*
|
||||
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
|
||||
*/
|
||||
public function edit($Entity$Entity $entity)
|
||||
{
|
||||
return view('$module$::admin/update', compact('entity'));
|
||||
}
|
||||
|
||||
/**
|
||||
* Update existing entity
|
||||
*
|
||||
* @param Update$Entity$ $request
|
||||
* @param $Entity$Entity $item
|
||||
*
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function update(Update$Entity$ $request, $Entity$Entity $entity)
|
||||
{
|
||||
|
||||
// ...
|
||||
|
||||
$this->$module$Repository->update($entity, $request->all());
|
||||
|
||||
return redirect()
|
||||
->back()
|
||||
->with('success', trans('$module$.$module.successfullyUpdated'));
|
||||
}
|
||||
|
||||
/**
|
||||
* Display form for creating new entity
|
||||
*
|
||||
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
|
||||
*/
|
||||
public function create() {
|
||||
$entity = new $Entity$Entity();
|
||||
|
||||
return view('$module$::admin/create', compact('entity'));
|
||||
}
|
||||
|
||||
/**
|
||||
* Create new instance of entity
|
||||
*/
|
||||
public function store(Create$Entity$ $request) {
|
||||
// ...
|
||||
|
||||
$this->$module$Repository->create($request->all());
|
||||
|
||||
return redirect()
|
||||
->back()
|
||||
->with('success', trans('$module$.$module.successfullyUpdated'));
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete entity
|
||||
*
|
||||
* @param $Entity$ $entity
|
||||
*
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function destroy($Entity$ $entity) {
|
||||
$entity->delete();
|
||||
|
||||
return redirect()
|
||||
->back()
|
||||
->with('success', trans('$module$.$module.successfullyDeleted'));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
<?php
|
||||
namespace Modules\$ModuleNamespace$\Http\Requests;
|
||||
|
||||
use App\Http\Requests\Request;
|
||||
|
||||
class Create$Entity$ extends Request {
|
||||
public function rules()
|
||||
{
|
||||
return parent::rules();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
<?php
|
||||
namespace Modules\$ModuleNamespace$\Http\Requests;
|
||||
|
||||
use App\Http\Requests\Request;
|
||||
|
||||
class Update$Entity$ extends Request {
|
||||
public function rules()
|
||||
{
|
||||
return parent::rules();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
<?php
|
||||
|
||||
\Route::group([
|
||||
'prefix' => \LaravelLocalization::setLocale() . '/admin/$module$',
|
||||
'middleware' => ['admin'],
|
||||
'namespace' => 'Modules\$Module$\Http\Controllers\Admin'
|
||||
], function () {
|
||||
Route::get('/', '$Module$@index')
|
||||
->name('$module$.overview');
|
||||
|
||||
Route::get('/new', '$Module$@create')
|
||||
->name('$module$.new');
|
||||
|
||||
Route::post('/new', '$Module$@store')
|
||||
->name('$module$.postNew');
|
||||
|
||||
Route::get('/edit/{id}', '$Module$@edit')
|
||||
->name('$module$.edit');
|
||||
|
||||
Route::post('/edit/{id}', '$Module$@update')
|
||||
->name('$module$.postEdit');
|
||||
|
||||
Route::get('/delete/{id}', '$Module$@delete')
|
||||
->name('$module$.delete');
|
||||
});
|
||||
Reference in New Issue
Block a user