Подскажите пожалуйста, всё делаю как по уроку, у меня на компьютере проект работает с "Policies", но когда выкладываю на хостинг получаю ошибку "This action is unauthorized."
а можно урок про то как работать с базой данных через паттерн репозиторий ? иииииииииии в прцессе работы с данными как использовать атрибут pivot для моделей и включить его в запросы по поиску в RestApi ?
Немного не понял про authorizeResource, просто вы не показали пример работы с ним, а только инициализацию. UPD: чуть позже разобрался прочитал документацию laravel)) Controller Method Policy Method index viewAny show view create create store create edit update update update destroy delete
Я думаю, это не только в сообществе Laravel - это хорошая практика. Я обычно веду разработку таким образом, что когда нужно быстро получить результат, я могу запихнуть логику и в контроллер. Затем, когда результат получен, отработан и все ок, я начинаю выносить логику из контроллера в отдельный класс-сервис, который может быть повторно использован и в других контроллерах и в консольных командах и в очередях и событиях и так далее.
Политики позволяют обособленно группировать проверку разрешений в отдельный класс политики. На больших приложениях это позволяет более четко структурировать права и немного разгрузить код в контроллерах.
На 18:12 abort получает два параметра: код ошибки и сообщение. И вроде как берет их из Response::deny('сообщение', код). Но при обновлении страницы у вас код подставляется верно, а сообщение остается прежним "Not found". Я сделал свой шаблон для ошибки 404.blade.php и там прописал getStatusCode, getMessage. Но правильно ли я сделал? Или все таки abort как то может вывести правильное сообщение из $response?
Внешний вид страницы с ошибкой 404 определяется конечным blade-шаблоном. И конкретно в шаблоне, отвечающем за ошибку 404 стоит конкретное сообщение Not found не зависимо от того, какое сообщение передано в Exception. Поэтому, если стоит цель сделать вывод кастомного сообщения, то необходимо взять вот этот файл: vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/views/404.blade.php Сделать его копию в каталоге resources/views/errors/ и заменить сообщение Not Found на $exception->getMessage()
Канал - открытие!!Спасибо
ЛУЧШИЙ!
Отличный канал. Спасибо огромное автору!!!
Подскажите пожалуйста, всё делаю как по уроку, у меня на компьютере проект работает с "Policies", но когда выкладываю на хостинг получаю ошибку "This action is unauthorized."
Отличное видео))) Автор будут ли еще видео по Laravel?
Интересно было бы еще узнать про guard.
а можно урок про то как работать с базой данных через паттерн репозиторий ?
иииииииииии в прцессе работы с данными как использовать атрибут pivot для моделей и включить его в запросы по поиску в RestApi ?
Немного не понял про authorizeResource, просто вы не показали пример работы с ним, а только инициализацию.
UPD: чуть позже разобрался прочитал документацию laravel))
Controller Method Policy Method
index viewAny
show view
create create
store create
edit update
update update
destroy delete
Не просто так в документации примеры с моделями. Сообществом laravel не принято выносить логику в контроллеры
Я думаю, это не только в сообществе Laravel - это хорошая практика. Я обычно веду разработку таким образом, что когда нужно быстро получить результат, я могу запихнуть логику и в контроллер. Затем, когда результат получен, отработан и все ок, я начинаю выносить логику из контроллера в отдельный класс-сервис, который может быть повторно использован и в других контроллерах и в консольных командах и в очередях и событиях и так далее.
@@lectoria Здравствуйте. Хотелеось бы такое видео от Вас.Спасибо за Ваш труд!
Чёта я так и не понял зачем нам эти политики, если они делают всё то же самое что гейты, только их сложнее писать...
Политики позволяют обособленно группировать проверку разрешений в отдельный класс политики. На больших приложениях это позволяет более четко структурировать права и немного разгрузить код в контроллерах.
На 18:12 abort получает два параметра: код ошибки и сообщение. И вроде как берет их из Response::deny('сообщение', код). Но при обновлении страницы у вас код подставляется верно, а сообщение остается прежним "Not found". Я сделал свой шаблон для ошибки 404.blade.php и там прописал getStatusCode, getMessage. Но правильно ли я сделал? Или все таки abort как то может вывести правильное сообщение из $response?
Внешний вид страницы с ошибкой 404 определяется конечным blade-шаблоном. И конкретно в шаблоне, отвечающем за ошибку 404 стоит конкретное сообщение Not found не зависимо от того, какое сообщение передано в Exception. Поэтому, если стоит цель сделать вывод кастомного сообщения, то необходимо взять вот этот файл:
vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/views/404.blade.php
Сделать его копию в каталоге resources/views/errors/ и заменить сообщение Not Found на $exception->getMessage()