Теги: БазаДанных
28.09.2020
Начнем с каталога товаров. Нам потребуются три таблицы в базе данных для хранения категорий, брендов и товаров. Подключаемся к серверу БД и создаем новую базу данных larashop. После этого создаем три модели — Category, Brand и Product вместе с файлами миграции. Отредактируем файлы классов миграций…
27.09.2020
Чтобы предоставить доступ к определённым роутам только аутентифицированным пользователям, можно использовать посредник (middleware). Laravel поставляется с посредником auth, который определён в Illuminate\Auth\Middleware\Authenticate. Когда посредник определяет, что пользователь не аутентифицирован…
25.09.2020
В Laravel сделать аутентификацию очень просто — почти всё готово из коробки. Мы уже установили ранее пакет laravel/ui, чтобы использовать в шаблонах фреймворк bootstrap. Для создания заготовок всех необходимых для аутентификации контроллеров, шаблонов и роутов нужно выполнить artisan-команду.
18.09.2020
Вроде блог у нас уже работает, можно просматривать, редактировать и удалять записи. Но есть проблема с заголовками страниц сайта — они везде одинаковые. Заголовок задается в layout-шаблоне app.blade.php и имеет значение «Веб-разработка». Давайте это изменим и будем для разных страниц устанавливать разные значения.
17.09.2020
Прежде, чем двигаться дальше, давайте внесем пару мелких изменений в проект. Во-первых, у нас сейчас два почти одинаковых шаблона create.blade.php и edit.blade.php. Во-вторых, если будет запрошен для показа или редактирования не существующий пост — будет выброшено исключение. Лучше в этом случае показать страницу 404.
16.09.2020
Хорошо, с добавлением нового поста вроде разобрались, теперь нужно его показать. Для этого создаем новый шаблон show.blade.php, добавляем новый маршрут, реализуем метод show() контроллера. В шаблонах index.blade.php и search.blade.php делаем ссылку для просмотра отдельного поста.
14.09.2020
Теперь нам нужно реализовать остальные методы контроллера PostController — create(), store(), show(), edit(), update() и destroy(). Давайте создадим шаблон create.blade.php, добавим два маршрута в файле routes/web.php и внесем изменения в метод create(), который будет просто показывать форму.
12.09.2020
Наш контроллер умеет только выводить список всех постов блога. Но нам нужно, чтобы контроллер умел еще показывать отдельный пост, добавлять новый, редактировать или удалять существующий. Поэтому удаляем файл контроллера и создаем заново с помощью artisan-команды make:controller.
11.09.2020
Создадим первый контроллер, первое представление и первый маршрут. В результате на главной странице сайта будет показан список всех постов блога. Для создания контроллера используем artisan-команду make:controller — в результате будет создан файл класса контроллера в директории app/Http/Controllers.
09.09.2020
Laravel включает в себя механизм наполнения базы данных начальными данными (seeding) с помощью специальных классов. Все такие классы хранятся в директории database/seeds. Они могут иметь любое имя, но лучше придерживаться какой-то логики в их именовании — например, UserTableSeeder, PostTableSeeder и т.д.