Oleksandr
А я знаю анекдот про UDP, но не факт что до вас дойдет
invariance
Да все уж, кроме Фолли, поняли )))
В этом чате стараюсь (как и многие другие) держать более-менее профессиональную атмосферу
invariance
поэтому за попытки сделать здесь цирк буду гладить банхаммером
invariance
:3
Anonymous
так, вопрос для гуру laravel, от наших баранов в этом и есть причина ошибки, что в RouteServiceProvider не привязывается модель
собсвенно вопрос, что не так делаю? это старый код public function boot(Router $router) { $router->model('Post', Post::class); parent::boot($router); } это новый public function boot() { Route::model('Post', Post::class); parent::boot(); }
invariance
А не App\Post ли случаем?
Anonymous
А не App\Post ли случаем?
так я в use прописал путь
invariance
Это работает не так же
invariance
А хотя все
invariance
стопэ
invariance
понял
Anonymous
А не App\Post ли случаем?
я пробовал, и так и так не шло, но главное что нашел причину. теперь подумать как фиксить
Aleksandr
Aleksandr
Сделай как в доке, 1) Поменяй бут и роут модел местами. 2) Проверь неймспейсы для класса пост. 3) Пропиши правильно роут
Denis
Ваще, хранение моделей в app - косяк, с точки зрения архитектуры фс
Aleksandr
мы в апп/моделс кидаем
Aleksandr
обычно, а то их очень много
invariance
где ты это нашел?
Aleksandr
где ты это нашел?
https://laravel.com/docs/5.4/routing#route-model-binding
Aleksandr
Ты не поверишь!
invariance
👌
invariance
почему же, поверю
Denis
Проверю
Anonymous
мы в апп/моделс кидаем
так и сделано, в гыу прописан путь use App\Models\Post; местами менял ничего не дало, щас тоже поменял, ничего
Denis
Я кста, юзаю ::class по возмухе
invariance
ты наркоман просто
invariance
не
invariance
все норм
invariance
это магия фасадов
invariance
этот метод запросто может подтягиваться откуда то, где пхпшторм не видит
invariance
хотя, хотя
invariance
если у тебя из-за этого ошибка
invariance
то ты накосячил
invariance
ну, что метод недоступен
Denis
Короче или все норм, или ты накосячил
Anonymous
а как в роутах правильно теперь сделать? Route::get('posts/{Post}' , function (App\Models\Post $post) { // [ 'uses' => 'PostsController@index', 'as' => 'layout.posts.index' ]; }); было Route::get('/posts/{Post}', [ 'uses' => 'PostsController@index', 'as' => 'layout.posts.index' ]);
invariance
например как написано в доке?
Anonymous
например как написано в доке?
да как в доке но чтоб еще написать 'uses' 'as'
invariance
по-моему ты слабо понимаешь, зачем нужен биндинг модели напрямую в роут
Denis
Пошленько
Aleksandr
да как в доке но чтоб еще написать 'uses' 'as'
```Route::get('post/{posts}', 'PostsController@index')->name('layout.posts.index');
Aleksandr
Route::get('post/{posts}', 'PostsController@index')->name('layout.posts.index');
Denis
Route::get('posts/{Post}' , function (App\Models\Post $post) { // [ 'uses' => 'PostsController@index', 'as' => 'layout.posts.index' ]; }); Где твой ретурн?
Aleksandr
а уже в контроллере пишешь неймспейсы
Aleksandr
метод
invariance
шзх
Denis
Route::get('posts/{slug}' , function (App\Models\Post $post) { return view('view.name', compact('post')) });
Aleksandr
туплю крч
Aleksandr
там просто нужен ретурн, да
Aleksandr
этот роут же возвращает экземпляр модели с определенным айдишником
Denis
slug
Anonymous
Route::get('posts/{slug}' , function (App\Models\Post $post) { return view('view.name', compact('post')) });
лол, вернулся к тому результату Trying to get property of non-object
Denis
лол, вернулся к тому результату Trying to get property of non-object
Тебе надо в базу походу лукануться
invariance
ему надо перестать тебя слушать
invariance
для начала
invariance
и начать читать доку глазами
invariance
а не жопой
Anonymous
так я по доке делаю, не получается
invariance
Route::get('profile/{user}', function (App\User $user) { // });
invariance
найди что общего у {user} и $user
Anonymous
найди что общего у {user} и $user
{user} - айди, $user объект
invariance
ну, что у них общего то в итоге
invariance
(подсказка - название)
invariance
а еще это же название в биндинге провайдера
Anonymous
так
Anonymous
invariance
итого тебе надо: // provider public function boot() { parent::boot(); Route::model('post', Post::class); } // routes.php Route::get('posts/{post}', function (App\Post $post) { // });
invariance
и еще, убери compact
invariance
и сделай обычный массив [...]