我正在尝试使用表单模型绑定(我刚刚了解到),但我遵循来自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)
您输入为"的第二个选项可以填写为Input::old('date') 这样,当您将旧数据传递回表单时,假设表单未完成,您使用 Input::old 指定的表单字段将用他们之前完成的数据"重新填充"
{{ form::text('date', input::old('date'), $dateOptions) }}
$dateOptions将是包含占位符、id 或您希望提供的任何其他 html 属性的数组。
希望这有帮助,即使你弄清楚了基南:)
我想通了。它实际上完全不同。但我不知道为什么...
问题线:
{{ 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')); }}