Да, вместо auth.login в 5,3, нужно писать $listen = [ 'Illuminate\Auth\Events\Login' => ['App\Listeners\UserEventListener']]; . Вопрос решили здесь Как использовать стандартные события Laravel 5.3?
Спасибо! Надо же как все просто, а столько мучился.
Исправил
$listen = [ 'auth.login' => ['App\Listeners\UserEventListener']]
на
$listen = [ 'Illuminate\Auth\Events\Login' => ['App\Listeners\UserEventListener']];
Теоретически понял, но практически это у меня не работает. Правильно ли я делаю, что создаю файл и класс соответственно AuthLoginEventHandler слушателя за указанным вами выше путем, а в нем метод:
public function handle()
{
Log::info('Login');
}
Но при входе пользователя, нечего в лог не пишется..(
События срабатывает только когда я его сам вызываю со своих методов Event::fire(new AuthLoginEventHandler(Auth::id())); Но как же сделать что бы оно сработало, когда пользователь вошел??? (
Это просто через проверку if($languageId) { //запрос с where('language_id') } else { //запрос без where('language_id') } ? Но так больше кода получается,... но меньше проверок в SQL
Спасибо. Ваши ответы и приму за решение вопроса. Делаю вывод что, для меня сейчас, лучше всего писать методы elequent в моделях и вызывать их в контроллерах. А с опытом, думаю, вопрос паттернов решится.
Ок, так и решено, пока буду писать методы eloquent в классах моделей а в контроллерах их вызывать... а со временем и практикой, может, и опыт использование паттернов придет.
Вот нашел пример реализации (https://github.com/bestmomo/laravel5-3-example) репозитория но без использования интерфейсов. Посмотрите пожалуйста, можно ли использовать концепцию для своих проектов?
Вот нашел пример реализации (https://github.com/bestmomo/laravel5-3-example) репозитория но без использования интерфейсов. Посмотрите пожалуйста, можно ли использовать подобную концепцию для своих проектов?
Ну так проще уже репозиторий сделать чем использовать Job. Да и, как мне кажется, Job здесь не лучший вариант для создание методов между контроллером и моделью
И я не увидел особых плюсов в данных примерах, может через моё не понимание, а может их там и действительно нету. Но все-таки хотелось бы узнать куда правильнее писать методы eloquent. Ранее я писал методы в моделях, но почитав, посмотрев примери, пришел к выводу что в моделях лучше устанавливать связи и настраивать саму модель. Ну а методы так и не знаю где писать...
Понимание поверхностное, но хотелося бы разобраться, для начала могу делать по примерах. Да и даже в не сложных проектах, я думаю будет хорошо использовать что то между контроллерами и моделями
Алексей Уколов: Значит например $categories = Category::all() - это не запрост (это ORM). Но где тогда писать правильнее этот код? В контроллерах или в моделях?
А что то конкретные вроде плагина, пакета (кроме Laravel Socialite, - там только соцсети) есть для этих целей? Так как я новичок, то что то сильно допилевать, тем более писать сам не смогу.
Ваше мнение и мнение JhaoDa и Кандрашкин Алексей расходятся. Хотя мне ранее тоже сдавалось что №2 наиболее универсальный и отвечает модели MVC. Теперь я в затруднении