Красноречивый ORM кажется простым методом, но есть много полускрытых функций и малоизвестных способов получить от него больше. В этой статье я дам вам несколько советов.

  1. Избегайте ошибок, используя дополнительный помощник

При доступе к значениям объекта, если этот объект имеет значение NULL, ваш код вызовет ошибку. Например:

return $invoice->total;

Вызвало бы ошибку, если бы объект счета был пуст. Простой способ избежать ошибок - использовать дополнительный помощник Laravel:

return optional($invoice)->total;

Теперь, если объект $ invoice имеет значение null, ваш код вернет null вместо того, чтобы вызывать ошибку. Вы также можете использовать закрытие с дополнительным помощником. Он получает закрытие как второй аргумент и будет вызываться, если первый аргумент не равен нулю.

2. Обновить или создать

При работе с базами данных принято проверять, существует ли уже данная запись, и обновлять ее или создавать новую запись, если ее нет. Что-то в этом роде:

Вместо этого вы можете использовать метод updateOrCreate Eloquent:

3. Переменная цикла в foreach

Внутри цикла foreach проверьте, является ли текущая запись первой / последней, просто используя переменную $ loop.

Есть также другие свойства, такие как

Подробнее здесь: https://laravel.com/docs/master/blade#the-loop-variable

4. Группа маршрутов

Группа маршрутов в группе маршрутов, вы можете создать группу в группе, назначив определенное промежуточное программное обеспечение только некоторым URL-адресам в «родительском»

5. Красноречивые методы даты

В Eloquent просто проверить дату с помощью функций whereDay (), whereMonth (), whereYear (),
whereDate () и whereTime ().

6. Проверка электронной почты в laravel.log

Если вы хотите протестировать содержимое электронной почты в своем приложении, но не можете или не хотите настраивать что-то вроде Mailtrap, используйте параметр .env MAIL_DRIVER=log, и все сообщения электронной почты будут сохранены в файле storage / logs / laravel.log, а не будут отправлены.

7. Конкретная модель столбца в методе :: all ()

При вызове Eloquent Model :: all () вы можете указать, какие столбцы возвращать.

$users = User::all([‘id’, ‘name’, ‘email’]);

8. Название столбца псевдонима в элементе

в Eloquent Query Builder вы можете указать «as» для возврата любого столбца с другим именем,
как в обычном запросе SQL.

9. Используйте hasMany, чтобы создать Many child

Если у вас есть отношение hasMany (), вы можете использовать saveMany () для сохранения нескольких «дочерних» записей из «родительского» объекта в одном предложении.

10. Метод dd (сбросить и умереть)

Один из наиболее распространенных способов отладки ошибки в экосистеме Laravel - вывести переменную на экран и выяснить, что с ней не так.

Функция dd выгружает заданные переменные и завершает выполнение скрипта. Вместо того, чтобы делать dd ($ result); вы можете поместить - ›dd () как метод непосредственно в конце вашего красноречивого предложения или любой коллекции

Спасибо, что прочитали эту статью! Не забудьте аплодировать 👏 или оставить комментарий 💬