Литмир - Электронная Библиотека

Примечание: Если вы используете Laravel Herd, ваши новые приложения Laravel будут использовать домен

.test. Например, по адресу https://folder_name.test будет отображаться страница приветствия.

Поздравляем! Теперь вы готовы приступить к созданию замечательных приложений. Простота Laravel гарантирует, что вы сможете поднять новый проект за считанные мгновения.

Прежде чем погрузиться в код, давайте кратко познакомимся со структурой папок Laravel.

Структура папок Laravel

В новом проекте Laravel вы будете иметь следующую структуру кода:

Laravel – гайд по выживанию - _4.jpg

Вы встретите 10 директорий:

1. app

2. bootstrap

3. config

4. база данных

5. public

6. ресурсы

7. маршруты

8. хранилище

9. тесты

10. vendor

Мы не будем подробно рассматривать все папки, однако важно иметь краткое представление о каждой из них.

App

Это каталог, в котором хранится вся логика нашего приложения. В эту папку мы поместим все наши модели, контроллеры, сервисы и многие другие классы.

Bootstrap

Эта папка используется для загрузки laravel (startup laravel).

Config

Эта папка будет содержать множество глобальных настроек для нашего приложения.

Database

Эта папка содержит наши элементы базы данных, такие как миграции и сиды (seeders).

Public

Эта папка Public содержит многие активы приложения, такие как изображения, таблицы стилей и скрипты.

Resources

В эту папку мы поместим наши представления. Представления – это страницы, которые видит пользователь.

Routes

Эта папка содержит все маршруты для нашего приложения.

Storage

Laravel использует эту папку для хранения сессий, кэша и журналов.

Test

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

Vendor

В этой папке хранятся наши зависимости. Когда вы добавляете в приложение новые библиотеки (как в примере с пиццей «Добавки»), именно эта папка будет содержать эти библиотеки.

Узнаете ли вы composer.json file на изображении выше? Помните, что именно здесь мы определяем зависимости (начинки для пиццы) для нашего приложения. Другим важным элементом является .env, который содержит все наши переменные окружения, такие как режим отладки и учетные данные базы данных.

Такова основная структура приложения Laravel. По мере дальнейшей работы с Laravel все это станет для вас более привычным.

Отличная работа! Вам понравится работать с Laravel. Засучим рукава и углубимся в работу с кодом.

2. Маршрутизация

Laravel – гайд по выживанию - _5.jpg

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

Обзор маршрутизации

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

маршрутизации приложений.

Маршрут можно представить себе, как подобие дороги. Например, "Мы ехали по дороге (маршруту), чтобы добраться до кладбища". Маршрут определяет, как вы добираетесь из одного места в другое. Когда вы набираете URL-адрес веб-сайта, например, site.com/graveyard, вы сообщаете браузеру, что кладбище – это маршрут, по которому вы хотите проехать. Затем приложение говорит: "Хорошо, вы хотите отправиться на "кладбище"? Вот вывод, который я получил для маршрута "кладбище"".

Создание маршрута с помощью Laravel довольно простое:

<?php

Route::get('graveyard', function(){ echo 'Добро пожаловать на кладбище!';

});

Здесь создается маршрут для страницы "кладбище". Приложение, получив запрос на "get" маршрута "graveyard", выполнит функцию и выдаст сообщение "Добро пожаловать на кладбище!".

Маршрутизация в Laravel

Наша маршрутизация в Laravel находится по адресу routes\web.php. Именно здесь мы будем добавлять все маршруты для нашего приложения.

В принципе, у нас есть четыре типа маршрутов: POST, GET, PUT и DELETE. Они выглядят следующим образом:

<?php

Route::post('/zombie', function () {

echo "We want to create a new zombie";

});

Route::get('/zombie', function () {

echo 'We want to read or view a zombie';

});

Route::put('/zombie', function () {

echo "We want to update an existing zombie";

});

Route::delete('/zombie', function () { echo "We want to destroy a zombie";

});

Эти методы – POST, GET, PUT и DELETE – являются частью архитектуры RESTful, каждый из которых отражает определенное действие:

POST: Создание сущности (Create).

GET: Чтение сущности или нескольких сущностей (Read).

PUT: Обновить сущность (Update).

DELETE: удаление сущности (Delete).

Эта техника также называется CRUD (Create, Read, Update, Delete).

Чаще всего мы будем использовать метод GET, но есть также маршрут, который можно использовать для получения любого метода:

<?php

Route::any('/zombie', function () {

echo "Any request from this zombie route";

});

Отлично!

Итак, как мы инициируем наши маршруты из браузера? В большинстве случаев мы используем GET-запрос. Введя site.com/zombie, мы получаем функцию GET. Но как насчет передачи данных?

Легко! Для этого подойдет HTML-форма, подобная этой:

<form method="POST" action="/zombie">

@csrf

@method('PATCH')

<input type="submit">

</form>

2
{"b":"857873","o":1}