在表单上显示值

时间:2014-01-26 21:38:41

标签: laravel-4

在页面上添加表单输入时,我们稍后需要当前发布的数据,好像某些字段与要求不匹配所以我们将它们显示在表单上,​​以帮助用户不再填写,以及显示来自数据库是否有任何内容。

我使用传统的使用三元的方法:

Input::old('name')?Input::old('name'):$data->name 

到表单输入:

{{ Form::text("name", Input::old('name')?Input::old('name'):$data->name, array("id" => "name", "class" => "form-control", "placeholder" => "name")) }}

$data->name来自数据库,您已知道Input::old('name')

有没有更好的方法来显示不使用这种旧方法的价值? Laravel是否提供了一些关于它的黑客攻击?

1 个答案:

答案 0 :(得分:0)

这是表单模型绑定的目的。

// For creating model
public function create()
{
    $user = User::newInstance();

    return View::make('user.form', compact('user'));
}

// For updating model
public function edit($id)
{
    $user = User::find($id);

    return View::make('user.form', compact('user'));
}

{{ Form::model($user) }}

    {{ Form::text('name') }}

{{ Form::close() }}

这完全符合您的要求 - 使用实际对象数据填充表单,或者如果先前输入了$ _POST数据。