[英]Laravel form model binding htmlentities error
我正在尝试使用表单模型绑定(这是我刚刚学到的),但是我遵循的是laravel网站的示例和laracasts的示例。 那有人可以教育我吗?
我的观点:
{{ Form::model($transaction, array(
'method' => 'PATCH',
'route' => array('my.transactions.update', $transaction->id)
)) }}
<div class="form-group">
<label class="col-md-2 control-label" for="date"></label>
<div class="col-md-2">
<div class="input-group">
{{ Form::text('date', array('class'=>'form-control input-md', 'placeholder'=>'YYYY-MM-DD')); }}
<span class="input-group-addon">
<span class="glyphicon glyphicon-calendar"></span>
</span>
</div>
{{Form::close() }}
我的控制器:
public function edit($id)
{
$title = "Edit Transaction";
$transaction = Portfolio::find($this->portfolio_id)->transactions->find($id);
return View::make('Transactions/edit', compact('title', 'transaction'));
}
我不知道出了什么问题,但我不断收到此错误。
htmlentities() expects parameter 1 to be string, array given (View: ../transactions/edit.blade.php)
我想到了。 它实际上完全不同。 但是我不确定为什么...
问题专线:
{{ Form::text('date', array('class'=>'form-control input-md', 'placeholder'=>'YYYY-MM-DD')); }}
更正:
{{ Form::text('date', '', array('class'=>'form-control input-md', 'placeholder'=>'YYYY-MM-DD')); }}
您可以将输入为''的第二个选项填写为Input :: old('date')这样,当您将旧数据传递回表单时,假设表单未完成时,您指定的表单字段使用Input :: old将会被他们先前完成的数据“重新填充”
{{Form :: text('date',Input :: old('date'),$ dateOptions)}}
$ dateOptions将是包含占位符,id或您希望提供的任何其他html属性的数组。
希望这对您有所帮助,即使您弄清了基南:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.