Я только что недавно попал в MVC и Laravel и задался вопросом, как правильно обращаться с вещами.Маршруты Laravel и правильный рабочий процесс
Предположим, что я создаю веб-сайт с его CMS или что-то подобное.
У меня есть целевой страницы www.website.com с CMS на www.website.com/cms/
Система CMS имеет навигационное меню, у которого каждый элемент представляет собой таблицу в БД.
Скажем, учетные записи | Статьи | Меню - нажатие на каждый элемент должно привести список записей в каждой из таблиц.
Для этого я:
а) иметь маршрут
Route::get('cms/{requestedtable}', '[email protected]');
И в этом маршруте я
switch($requestedtable)
case 'accounts';
$data = Account::all();
case 'menu'
$data = Menu::all();
б) иметь маршрут для каждого пункта
Route::get('cms/accounts/', '[email protected]');
public function index() {
Account::all()
То же самое для вставки, обновления а также удаление. Было бы правильнее создать маршрут для каждого из событий
Route::get('cms/accounts/', '[email protected]');
Route::get('cms/accounts/create', '[email protected]');
Route::get('cms/accounts/update', '[email protected]');
Или только один маршрут, но используя другую функцию
Route::get('cms/{{requestedtable))/update', '[email protected]');
То, что я боюсь с динамическим вариантом, является то, что я у меня будет 30 глубоких переключателей, если у меня будет 30 столов. Но опять же у меня также будет 30 контроллеров, если у меня будет 30 столов. Я всегда хочу, чтобы мой код был как стандартизированный (это даже слово), насколько это возможно, даже если я работаю только над этим. Мне нравится делать все правильно.
Спасибо за любой ввод.
Буквально через 2 минуты после создания этой статьи я перешел к следующему эпизоду Laracasts, и речь шла о маршрутах и Res ources. Это изящное решение, с которым я пойду! Благодарю. – Foxhoundn