在阅读文档后确定:http://four.laravel.com/docs/html#form-model-binding
我有一个看起来像这样的表单:
{{ Form::model($profile, array('action' => 'ProfilesController@edit', $profile->user_id, 'files' => true)) }}
{{ Form::select('gender', array('0' => 'What gender are you?', '1' => 'Male', '2' => 'Female'), array('class' => 'span12')) }}
{{ From::close() }}
Run Code Online (Sandbox Code Playgroud)
我的问题是:模型绑定不适用于Form :: select,适用于文本输入.我究竟做错了什么??
谢谢你的帮助.
kJa*_*esy 10
我认为select中的第3个参数需要是选中的值:
{{ Form::select('gender', array('0' => 'What gender are you?', '1' => 'Male', '2' => 'Female'), $profile->gender) }}
Run Code Online (Sandbox Code Playgroud)
我知道它有点挫败模型绑定的目的,但实际上它会起作用.其他问题当然是现在你已经失去了你的课程!
但是如果我们快速浏览一下api:
select( string $name, array $list = array(), string $selected = null, array $options = array() )
Run Code Online (Sandbox Code Playgroud)
我们看到您可以将您的选项数组作为第4个参数传递.
因此,工作代码是:
{{Form :: select('gender',array('0'=>'你是什么性别?','1'=>'男性','2'=>'女性'),$ profile-> gender ,array('class'=>'span12'))}}
小智 6
kJamesy是正确的,第三个参数必须是选定的值,但如果将其设置为null,则表单模型绑定将设置默认值.
{{ Form::model($profile, array('action' => 'ProfilesController@edit', $profile->user_id, 'files' => true)) }}
{{ Form::select('gender', array('0' => 'What gender are you?', '1' => 'Male', '2' => 'Female'), null, array('class' => 'span12')) }}
{{ From::close() }}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
8464 次 |
最近记录: |