Laravel 是一款流行的 PHP Web 开发框架,以其优雅的语法和丰富的功能深受开发者喜爱。在 Laravel 中,表单的提交是基础操作之一。本文将详细介绍如何在 Laravel 中轻松创建和提交 Form 表单,并通过实战案例进行说明。
第一步:创建表单视图
首先,我们需要在 Laravel 的资源视图文件夹中创建一个新的视图文件。例如,创建一个名为 create_post.blade.php 的文件,用于展示表单的 HTML 代码。
<!DOCTYPE html>
<html>
<head>
<title>创建新文章</title>
</head>
<body>
<h1>创建新文章</h1>
<form action="{{ route('posts.store') }}" method="POST">
@csrf
<div class="form-group">
<label for="title">标题</label>
<input type="text" class="form-control" id="title" name="title" required>
</div>
<div class="form-group">
<label for="content">内容</label>
<textarea class="form-control" id="content" name="content" required></textarea>
</div>
<button type="submit" class="btn btn-primary">提交</button>
</form>
</body>
</html>
第二步:创建路由
接下来,在 Laravel 的路由文件 routes/web.php 中添加一个新的路由,用于处理表单提交请求。
Route::post('/posts', 'PostsController@store');
第三步:创建控制器
然后,创建一个名为 PostsController.php 的控制器文件,用于处理表单提交逻辑。
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class PostsController extends Controller
{
public function store(Request $request)
{
// 验证表单数据
$validatedData = $request->validate([
'title' => 'required|max:255',
'content' => 'required',
]);
// 保存数据到数据库
$post = new Post();
$post->title = $validatedData['title'];
$post->content = $validatedData['content'];
$post->save();
// 重定向到文章列表页面
return redirect()->route('posts.index');
}
}
第四步:处理表单提交
现在,我们已经完成了表单的创建和路由设置。当用户填写完表单并提交后,Laravel 会自动调用 PostsController@store 方法处理请求。
在 store 方法中,我们首先使用 validate 方法对表单数据进行验证。如果验证失败,Laravel 会自动重定向用户到表单页面,并显示错误信息。如果验证成功,我们将数据保存到数据库,并重定向用户到文章列表页面。
实战案例
以下是一个简单的实战案例,演示如何使用 Laravel 创建和提交一个简单的表单:
- 在
resources/views/posts文件夹中创建create_post.blade.php视图文件。 - 在
routes/web.php文件中添加路由Route::post('/posts', 'PostsController@store');。 - 创建
PostsController.php控制器文件,并实现store方法。 - 在浏览器中访问
/posts,填写表单并提交。
通过以上步骤,您就可以在 Laravel 中轻松创建和提交 Form 表单了。希望本文对您有所帮助!
