Лудильщик Laravel
Tinker – это консольная программа, которая позволяет вам играть с моделями Laravel и выполнять произвольную команду PHP непосредственно из командной строки
Запуск консоли
php artisan tinker
Решение проблемы с Tinker (для PHP 7.3 или новее), когда он завершает работу после каждой команды
Измените файл php.ini, добавив эту опцию
pcre.jit=0
На Mac php.ini обычно можно найти в /Приложениях/XAMPP/xamppfiles/etc/php.ini
Чтобы быть уверенным, где он находится, запустите php -i | grep 'php.ini' в терминале
В Windows он находится в вашей папке XAMPP C:\xampp\php\php.ini или C:\xampp\etc\php.ini , в зависимости от местоположения самого XAMPP
Красноречивая Модель
Создание новой модели
php artisan make:model BlogPost
Создание новой модели с миграцией
php artisan make:model BlogPost --migration // or php artisan make:model BlogPost -m
По соглашению Laravel предполагает, что имя таблицы – это имя модели во множественном числе “случай змеи”. Например:
| Запись в блоге | сообщения в блоге |
| Запись в блоге | сообщения в блоге |
| Очень Длинный Поезд | очень продолжительные_тренировки |
Чтобы определить пользовательское имя, добавьте (переопределите) защищенную таблицу $ свойство модели
class BlogPost extends Model
{
protected $table = 'blogposts';
}
По умолчанию все модели хранятся в пространстве имен App , например. Приложение \Запись в блоге
Доступ и изменение свойств
Вы можете читать и изменять свойства модели (столбцы строк) с помощью свойств
$post = App\BlogPost::find(1); $title = $post->title; $content = $post->content; $post->title = 'New title'; $post->content = 'New content'; // Always call save() to create the record and UPDATE the existing one $post->save();
Имя свойства соответствует 1:1 имени столбца таблицы
Запрашивающий
Извлечение всех моделей в виде коллекции
$posts = App\BlogPost::all();
Извлечение одной модели по первичному ключу (обычно по идентификатору свойству/столбцу)
// Fetch BlogPost with id 10 $post = App\BlogPost::find(10);
Выборка коллекция моделей по идентификатору
$posts = App\BlogPost::find([1, 2, 3]);
Коллекции могут быть повторяемыми (например, с использованием foreach)
$posts = App\BlogPost::all();
foreach ($posts as $post) {
echo $post->title;
}
Получение первого элемента коллекции моделей
$posts = App\BlogPost::all(); $post = $posts->first();
Создание и сохранение (создание строки базы данных) новая модель
$post = new App\BlogPost(); $post->title = 'Title'; $post->content = 'Content'; $post->save();
Источник: Шпаргалка Laravel
Оригинал: “https://dev.to/lamhoanganh/laravel-cheat-sheet-models-eloquent-56k8”