Size: a a a

Laravel для начинающих

2021 January 29

МM

М M. in Laravel для начинающих
Andrey Helldar
Пропущен обязательный параметр - первые три слова в строке ошибки.

В коде написано так:
route('news.edit', app()->getLocale(), $item->id)

А должно быть так:

route('news.edit', ['locale' => app()->getLocale(), 'id' => $item->id])

(Ключи параметров только свои подставь)
TypeError
Argument 1 passed to App\Http\Controllers\Admin\NewsController::edit() must be an instance of App\Models\News, string given, called in D:\OSPanel\domains\zir\vendor\laravel\framework\src\Illuminate\Routing\Controller.php on line 54
источник

VG

Viktor Gramm in Laravel для начинающих
М M.
TypeError
Argument 1 passed to App\Http\Controllers\Admin\NewsController::edit() must be an instance of App\Models\News, string given, called in D:\OSPanel\domains\zir\vendor\laravel\framework\src\Illuminate\Routing\Controller.php on line 54
чё написано то?
источник

МM

М M. in Laravel для начинающих
тип $news должно быть объект а передается string
источник

VG

Viktor Gramm in Laravel для начинающих
умничка
источник

МM

М M. in Laravel для начинающих
Andrey Helldar
Пропущен обязательный параметр - первые три слова в строке ошибки.

В коде написано так:
route('news.edit', app()->getLocale(), $item->id)

А должно быть так:

route('news.edit', ['locale' => app()->getLocale(), 'id' => $item->id])

(Ключи параметров только свои подставь)
а я передаю в качестве параметр id вот так
источник

МM

М M. in Laravel для начинающих
М M.
TypeError
Argument 1 passed to App\Http\Controllers\Admin\NewsController::edit() must be an instance of App\Models\News, string given, called in D:\OSPanel\domains\zir\vendor\laravel\framework\src\Illuminate\Routing\Controller.php on line 54
при нажатии на ссылку получаю ошибку
источник

AH

Andrey Helldar in Laravel для начинающих
М M.
а я передаю в качестве параметр id вот так
Как роут определяешь? Что в коде?
источник

МM

М M. in Laravel для начинающих
я не такой тупой как вы думайте все эти проблемы из-за локализации
источник

МM

М M. in Laravel для начинающих
все мои роуты находятся внутри
Route::group([
   'prefix' => '{locale}',
   'where' => ['locale' => '[a-zA-Z]{2}'],
   'middleware' => 'setlocale'], function() {
источник

AH

Andrey Helldar in Laravel для начинающих
М M.
все мои роуты находятся внутри
Route::group([
   'prefix' => '{locale}',
   'where' => ['locale' => '[a-zA-Z]{2}'],
   'middleware' => 'setlocale'], function() {
А ниже, роут который ведёт на контроллер Admin\NewsController::edit()?
источник

МM

М M. in Laravel для начинающих
Route::resource('news', \App\Http\Controllers\Admin\NewsController::class);
источник

AH

Andrey Helldar in Laravel для начинающих
М M.
все мои роуты находятся внутри
Route::group([
   'prefix' => '{locale}',
   'where' => ['locale' => '[a-zA-Z]{2}'],
   'middleware' => 'setlocale'], function() {
Для локализации лучше юзай пакет https://github.com/mcamara/laravel-localization
Меньше гемора будет
источник

AH

Andrey Helldar in Laravel для начинающих
М M.
Route::resource('news', \App\Http\Controllers\Admin\NewsController::class);
Ок. Значит во вьюхе код должен быть такой:

route('news.edit', ['locale' => app()->getLocale(), 'news' => $item->id])
источник

МM

М M. in Laravel для начинающих
источник

AH

Andrey Helldar in Laravel для начинающих
М M.
Route::resource('news', \App\Http\Controllers\Admin\NewsController::class);
В контроллере, надеюсь, public function edit(News $news)?
источник

МM

М M. in Laravel для начинающих
Andrey Helldar
Ок. Значит во вьюхе код должен быть такой:

route('news.edit', ['locale' => app()->getLocale(), 'news' => $item->id])
это заработало.  теперь пролема при нажатии
источник

МM

М M. in Laravel для начинающих
Andrey Helldar
В контроллере, надеюсь, public function edit(News $news)?
да
источник

AH

Andrey Helldar in Laravel для начинающих
https://github.com/andrey-helldar/laravel-lang-publisher и негоже вручную переводить.
источник

МM

М M. in Laravel для начинающих
public function edit(News $news)
{
       return view('admin.news.edit', compact('news'));
}
источник

С

Санжар in Laravel для начинающих
черт юнит-тесты игрушка дъявола
источник