在Laravel中将管理逻辑与前端分开的最佳方法是什么?
我的问题是,我想将CRUD保留在一个控制器中。
例如,如果我有产品资源。我希望能够通过以下方式查看产品:http://my-shop.com/product-category/product/1
但通过以下方式更新,创建和删除产品:http://my-shop.com/admin/product/new
这怎么可能?谢谢!
答案 0 :(得分:2)
正如近距离投票所说,这是广泛的,但这里有一些开始的路线:
Route::get('{category}/product/{id}', 'ProductsController@show');
Route::get('admin/product/new', 'ProductsController@create')
Route::post('admin/product/new', 'ProductsController@store')
Route::patch('admin/product/{id}/update', 'ProductsController@update')
Route::delete('admin/product/{id}/delete', 'ProductsController@delete')
还有一个控制器:
class ProductsController extends Controller {
public function show($category, $id)
{
}
public function create()
{
}
public function store()
{
}
public function store($id)
{
}
public function store($id)
{
}
}
当然你可以在两个不同的控制器中分离这些东西,因为在这种情况下,我们有管理员和非管理员由同一个控制器完成,但这完全取决于你。