在 Laravel 中优雅处理 Form 表单

在开发 laravel 应用的时候,通常都会涉及到表单的处理,针对如何优雅处理和复用 laravel 的 form 表单,下面是小小的人生经验:

使用 Form Package

虽然写原生的 HTML 代码可读性确实高了,但是其实 Form Package 还是会带给我们很多的便利,比如在使用 Form::model() 和 Form::select() 的时候。

想象这样一个例子:我们需要添加或者更新用户的用户名

我们可以设计类似这样的代码和目录结构:

// 位于 resources/views/users/edit.blade.php{!! Form::model($user, ['route' => ['users.update', $user->id], 'method' => 'put']) !!}    @include('users._form')    // Your cancel / update buttons{!! Form::close() !!}// 位于 resources/views/users/_form.blade.php
{!! Form::label('name', 'Name') !!} {!! Form::text('name') !!}

上面的 Form 生成的 HTML 代码大概是这个样子:

            

注意在 Form::model() 方法中,我们之间传递了 $user 变量,这也就是说:如果 $user 存在 name 属性的值,表单就会自动填充该值,都不用我们手动写。

第二点就是,既然我们是要传递 $user 到 Form::model() 中,我们可以在控制器中使用这样的小技巧:

表单大师AI 表单大师AI

一款基于自然语言处理技术的智能在线表单创建工具,可以帮助用户快速、高效地生成各类专业表单。

表单大师AI 74 查看详情 表单大师AI

class UserController extends Controller{    public function create()    {        return view('users.create', ['user' => new User]);    }    public function edit(User $user)    {        return view('users.edit', ['user' => $user]);    }}

这样的话,你在编辑和新增的时候都不会存在冲突,编辑更新的时候有 name 的值,新增的时候就不用有 name 的值。所以我们可以把整个 Form 表单写成类似下面这个:

// 位于 resources/views/users/_form.blade.php
name) }}" class="form-control">

这样就大功告成啦!

最后

还是那句话:在表单处理的时候还是可以考虑一下 Form Package ,特别是你在处理 的时候,你会想念 Form Package 的。

更多Laravel相关技术文章,请访问Laravel框架入门教程栏目进行学习!

以上就是在 Laravel 中优雅处理 Form 表单的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/365364.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
CentOS上PostgreSQL日志如何管理
上一篇 2025年11月6日 04:59:56
苹果浏览器没了怎么找_iPhone Safari图标丢失恢复教程
下一篇 2025年11月6日 04:59:57

相关推荐

发表回复

登录后才能评论
关注微信