Laravel - 用旧输入填充<select>元素(编辑/更新)</select>

时间:2014-11-27 13:20:48

标签: forms select laravel

我必须从数据库中编辑一些值。

使用文本字段或区域我可以使用旧日期填充表单字段,如此

{{ Form::text('hours', Input::old('hours', $vacature->hours), array('class' => 'form-control', 'placeholder' => 'Aantal uren')) }}

其中Input::old('hours', $vacature->hours)负责处理从模型中检索到的旧输入。

当我尝试对select字段执行相同操作时,它不起作用。

 {{ Form::select('employmentType',Input::old('employmentType', $vacature->employmentType), array('vast' => 'Vast dienstverband', 'Freelance' => 'Freelance'), null, array('class' => 'form-control')) }}

我现在已经坚持了很长一段时间。所以我希望我能在这里得到一些帮助!

2 个答案:

答案 0 :(得分:1)

我相信当您使用Laravel的表单并将其绑定到模型时,您可以使用Redirect::back()->withInput();方法,laravel将为您完成工作。

这里是如何从Laravel文档中执行此操作的:

Form::model($user, array('route' => array('user.update', $user->id)))

Doc page.

答案 1 :(得分:1)

你应该重新安排传递的参数:

 {{ Form::select('employmentType', array('vast' => 'Vast dienstverband', 'Freelance' => 'Freelance'), Input::old('employmentType', $vacature->employmentType), array('class' => 'form-control')) }}

基本上你应该通过:

  • 字段名称
  • 选项(键=&gt;值对)
  • 选择的值(如果有值,则设置旧值;如果没有,则设置默认值)
  • 字段属性

或:

Form::select('fieldName', $options, $selectedValue, $fieldAttributes)

如果您一开始没有成功,请尝试将问题“切片”为以下步骤: 看看你得到了什么作为一个“旧的”值,看看当你将静态选择值传递给它时,选择的行为等。

小心