Как быть, убрали Route::controller в Laravel 5.3?

До версии 5.3 у меня был вот таким CRUD :
public function getIndex()
public function getForm($id = null)
    {
        if ($id) {
            $category = Category::find($id);
        } else {
            $category = [];
        }
        return view('backend.categories.form', compact('category'));
    }

    public function postForm(Request $request, $id = null)
    {
        $data = $request->except('_token');
        $data['alias'] = $this->aliasCreate($data['name']);
        if ($id) {
            $category = Category::find($id)->update($data);
        } else {
            $category = Category::create($data);
        }
        Session::flash('success', 'Success');
        return Redirect::action('Backend\CategoriesController@getIndex');
    }

    public function getDelete($id)
    {
// тут delete
    }

    private function aliasCreate($value)
    {
        // тут создаем alias
    }

getForm - у меня была как view и update и create. Для меня это очень удобно. Но теперь в 5.3 Route::controller убрали. Альтернитива Route::resource, но там куча не нужных метод. Как быть ? прывыкать к resource ?
  • Вопрос задан
  • 736 просмотров
Решения вопроса 2
Sanasol
@Sanasol Куратор тега Laravel
нельзя просто так взять и загуглить ошибку
controller выпилили чтобы убрать неочевидность, т.е. магические контроллеры, которые делают непонятно что.

Теперь нужно всё явно указывать, либо использовать resource(который кстати вы даже не пробовали, раз не знаете что там вообще жесткие рамки, и особо его не поиспользуешь как угодно).

Так что теперь только:
Router::get('func', '\App\Http.....');
Router::post('func', '\App\Http.....');
и т.д.

каждый метод контроллера.
Ответ написан
AmdY
@AmdY
PHP и прочие вебштучки
Напишите генератор, через reflection получайте методы и генерьте роуты.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы