Laravel 4:无法在编辑表单上使用表单宏获取模型数据

时间:2013-07-23 20:31:01

标签: php laravel laravel-4

在编辑表单上,我有一个问题是使用存储在DB中的数据填充表单字段。

当我使用doc中的代码片段时,一切都很好。但是我需要在表单字段中附加一个css类,并且不能将其作为参数传递:

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

所以我创建了下面的Form :: macro

Form::macro('textclass', function($name, $class = null)
{
    return '<input type="text" name="'.$name.'" id="'.$name.'" class="'.$class.'"/>';
});

所以我可以在我的观点中使用它:

{{ Form::textclass('email', 'm-wrap span12') }}

但是该字段不会填充模型数据。

有关如何解决这个问题的想法吗?

1 个答案:

答案 0 :(得分:1)

如果您想查看Form生成的内容,可以参考vendor/laravel/framework/src/Illuminate/Html/FormBuilder进行参考。

FormBuilder课程中,您将找到输入的方法。文本输入的方法如下所示

 public function text($name, $value = null, $options = array())
 {
    return $this->input('text', $name, $value, $options);
 } 

如您所见,第二个参数是值,第三个是选项数组。

因此,对于您的表单,它看起来像这样

Form::text('email', null, array('class'=>'m-wrap span12'))