GithubHelp home page GithubHelp logo

project11.my's Introduction

Домашнее задание № 11.

  • Создан новый проект на Laravel Framework 9.17.0. (composer create-project --prefer-dist laravel/laravel project11.my).
  • Командой composer require barryvdh/laravel-debugbar --dev в проект добавлен Laravel Debugbar. img.png
  • В папке config добавляем ServiceProvider в массив providers (Barryvdh\Debugbar\ServiceProvider::class).
  • При помощи Artisan создана таблица posts с полями: id, title, text. На поле title добавлено ограничение unique.
  • При помощи Artisan созданы: модель Post и класс PostController.
  • В методе PostController-> метод create() возвращает представление с формой создания поста.
  • Форма отправляется в метод PostController->store().
  • В методе create сохраняем полученные из формы данные.
  • Cоздаем пост с помощью полученной формы. Добавляем в форму csrf токен.
  • После выполнения запроса на создание поста находим этот запрос в Debugbar(иконка папки), его содержимое SQL-запрос, который был выполнен для создания поста: img_1.png
  • Добавляем вкладку Logs в Debugbar (php artisan vendor:publish --provider="Barryvdh\Debugbar\ServiceProvider)
  • Попробуем создать два поста с одинаковым значением title. возникает исключение в файле лога: img_2.png img_3.png
  • Обработана ошибка уникальности поля title img_5.png

Домашнее задание 11.

1. Установите и настройте Laravel Debugbar.

2. При помощи Artisan создайте таблицу posts с полями: id, title, text. На поле title добавьте ограничение unique.

3. При помощи Artisan создайте таблицу posts с полями: id, title, text. На поле title добавьте ограничение unique.

4. В методе PostController->create() должно возвращаться представление с формой создания поста (используя фасад или хелпер). Форма должна отправляться в метод PostController->store().

5. В методе create сохраняйте полученные из формы данные.

6. Попробуйте создать пост с помощью полученной формы. Добавьте в форму csrf токен (используя хелпер или Blade-директиву) и попробуйте еще раз.

7. После выполнения запроса на создание поста найдите этот запрос в Debugbar(иконка папки), просмотрите его содержимое и найдите SQL-запрос, который был выполнен для создания поста.

8. Попробуйте создать два поста с одинаковым значением title. Убедитесь, что возникает исключение и найдите его в файле лога, также попробуйте добавить вкладку Logsв Debugbar.

9*. Подумайте, что нужно сделать, чтобы при создании поста с неуникальным titleне возникало исключение. Попробуйте это реализовать.

project11.my's People

Contributors

igorilla-lab avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.