Яндекс.Метрика
qr-код - Как-то так стрелка - Как-то так
Ведущий экономист + ... пиктограмма - Как-то Так THIS     Экономическая грамотность и web-решения
Всё по теме: что, как и почему. Актуальные вещи - своими словами.
Повышайте своё качество WITH ME - СПЭМ !
Если тебе не нравится то, что ты получаешь, измени то, что ты даешь. © Карлос Кастанеда     KAKTOTAK.BY - услуги по экономическому проектированию и web-разработке (php/js - telegram, WordPress, Laravel, Vue, SEO)    Кооперация - на постоянной основе    Будь в теме   -    ПОДПИШИСЬ      Мои заметки - ЭКОНОМИКА +  и  Справочник WEB-разработчика | php+js+seo   в Telegram   telegram  

Ресурсный контроллер в Laravel: какие методы за что отвечают - CRUD

Ресурсный контроллер в Laravel: какие методы за что отвечают - CRUD

В Laravel ресурсные контроллеры представляют собой мощный способ обработки стандартных операций CRUD (Создание, Чтение, Обновление, Удаление). Ресурсный контроллер автоматически создает методы для всех этих операций. Когда мы создаём ресурсный контроллер с помощью команды Artisan, то получаем предварительно определенные методы.

Методы ресурсного контроллера

1. index

Метод: public function index()
Назначение: Отвечает за отображение списка всех ресурсов. Например, это может быть список всех пользователей или продуктов. Обычно используется для отображения представления (view) со всеми элементами.

2. create

Метод: public function create()
Назначение: Отвечает за отображение формы для добавления нового ресурса. Используется для вывода формы, где пользователь может ввести данные нового элемента.

3. store

Метод: public function store(Request $request)
Назначение: Обрабатывает запрос для создания нового ресурса. Сюда поступают данные из формы, и после валидации они сохраняются в базе данных. По окончании может произойти перенаправление на другую страницу.

4. show

Метод: public function show($id)
Назначение: Отвечает за отображение конкретного ресурса по его идентификатору. Обычно используется для вывода деталей конкретного элемента (например, конкретного пользователя или продукта).

5. edit

Метод: public function edit($id)
Назначение: Отвечает за отображение формы редактирования для существующего ресурса. Здесь выводится форма с текущими данными для редактирования.

6. update

Метод: public function update(Request $request, $id)
Назначение: Обрабатывает запрос на обновление существующего ресурса. Сюда поступают данные из формы редактирования, и после валидации они обновляют соответствующий ресурс в базе данных.

7. destroy

Метод: public function destroy($id)
Назначение: Отвечает за удаление существующего ресурса. Он удаляет ресурс по идентификатору и обычно перенаправляет пользователя после выполнения удаления.

Пример реализации ресурсного контроллера


namespace App\Http\Controllers;

use App\Models\User; // пример модели
use Illuminate\Http\Request;

class UserController extends Controller
{
    public function index()
    {
        $users = User::all();
        return view('users.index', compact('users'));
    }

    public function create()
    {
        return view('users.create');
    }

    public function store(Request $request)
    {
        $request->validate([
            'name' => 'required|string|max:255',
            'email' => 'required|string|email|max:255|unique:users',
        ]);

        User::create($request->all());
        return redirect()->route('users.index')->with('success', 'Пользователь успешно создан.');
    }

    public function show($id)
    {
        $user = User::findOrFail($id);
        return view('users.show', compact('user'));
    }

    public function edit($id)
    {
        $user = User::findOrFail($id);
        return view('users.edit', compact('user'));
    }

    public function update(Request $request, $id)
    {
        $request->validate([
            'name' => 'required|string|max:255',
            'email' => 'required|string|email|max:255|unique:users,email,' . $id,
        ]);

        $user = User::findOrFail($id);
        $user->update($request->all());
        return redirect()->route('users.index')->with('success', 'Пользователь успешно обновлен.');
    }

    public function destroy($id)
    {
        $user = User::findOrFail($id);
        $user->delete();
        return redirect()->route('users.index')->with('success', 'Пользователь успешно удален.');
    }
}

Ресурсные контроллеры в Laravel упрощают реализацию шаблона проектирования MVC, делая код более организованным и поддерживаемым. Их необходимо использовать для создания и управления ресурсами в приложении, соответствуя CRUD-операциям.

автор - Михаленко Р.
M R. Автор - kaktotak.by Специализация: финансово-экономическое проектирование - моделирование бизнеса, инвестиционных проектов реального сектора, анализ и оценка эффективности, оптимизация системы управленческих решений.

Широкий спектр web-компетенций для решения задач бизнеса.

Подписывайтесь на мой телеграмм канал - Мои заметки - ЭКОНОМИКА +
Там я ничего не втюхиваю и не навязываю. Просто делюсь полезной информацией по экономической грамотности. Повышайте своё качество вместе со мной: что, как и почему в экономике на простом языке. Понятия, алгоритмы, процессы, микро- и макроаспекты и многое другое. Может, будет интересно !

А так же - Справочник WEB-разработчика | php+js+seo
Заметки и нативные решения простых локальных задач на PHP, JS. Кое-что про Laravel, WordPress, Vue и SEO.

  Персональная помощь в экономическом проектировании и веб-разработке:

  • Финансово-экономическое моделирование, анализ, учёт, бизнес-планирование
  • Комплексная web-разработка/поддержка проекта в сети (php/js, seo – Laravel, WordPress, Vue, telegram, администрирование, контент, реклама в Яндекс Директ

  telegram или форма обратной связи

Administrator
351
0
Имя
E-mail
Рейтинг
Отзыв

Конвертер валют
RUB RUB-icon
USD USD-icon
EUR EUR-icon
CNY CNY-icon
BYN BYN-icon
UAH UAH-icon
KZT KZT-icon
SHORT - о чём речь
ЭКОНОМИЧЕСКАЯ ГРАМОТНОСТЬ
Хочу Всё Знать. Полезные Советы