Controllers in Laravel- 处理应用程序逻辑和数据交互

Controllers 其中的 Laravel 类负责处理应用程序逻辑并促进模型和视图之间的交互。 Controllers 帮助将应用程序逻辑与用户界面分离,创建清晰且可维护的项目结构。

 

创建控制器

要在 中创建控制器 Laravel,您可以使用 Laravel 的 Artisan 命令。 例如,要创建名为 的控制器 UserController,您可以在终端中运行以下命令:

php artisan make:controller UserController

创建控制器后,您可以在控制器内定义处理方法。 例如,在该 index() 方法中,您可以从模型中检索数据并将其传递给视图进行显示:

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', ['users' => $users]);  
    }  
  
    // Other handling methods  
}  

在上面的示例中,我们使用 User 模型从数据库中检索用户数据。 然后,我们将此数据传递给视图 users.index 以显示用户列表。

Controllers store() 还支持、、 update()、 等 方法 delete() 来处理数据创建、更新和删除。 您可以通过这些方法与数据库进行交互。

 

H使用 controllerroute

要使用 controller in route,您可以在文件中指定 controller 名称和相应的方法 routes/web.php

use App\Http\Controllers\UserController;  
  
Route::get('/users', [UserController::class, 'index']);  

在这个例子中,当用户访问 /users URL时, Laravel 会调用 index() 中的方法来 UserController 处理请求。

 

为用户列表屏幕创建视图

要创建该 users.index 文件,您可以使用以下命令:

php artisan make:view users.index

该命令将在目录中创建一个 index.blade.php 文件 resources/views/users

文件创建后,您可以打开该 index.blade.php 文件并设计页面的界面 users.index。 您可以使用 Blade 语法创建 HTML 结构并显示来自控制器的数据。

<!-- resources/views/users/index.blade.php -->  
@extends('layouts.app')  
  
@section('content')  
    <h1>Users</h1>  
    <ul>  
        @foreach($users as $user)  
            <li>{{ $user->name }}</li>  
        @endforeach  
    </ul>  
@endsection  

在上面的例子中,我们 app.blade.php 通过 来使用布局 @extends('layouts.app')。 页面内容在循环内定义并显示 变量 @section('content') 中的用户列表 。 $users @foreach

要使用 users.index 页面,需要在文件中定义相应的路由 routes/web.php,指向控制器中的方法并返回视图 users.index

 

综上所述, controllers 有助于 Laravel 分离应用程序逻辑和处理数据处理。 通过使用 controllers,您可以在 Laravel.