我是Laravel的新手,但是随便去了。我遇到了Form Model绑定的问题,我已经将表单模型设置为绑定并在我的数据库中设置数据,但该字段没有填充以匹配。
我怀疑,我错过了一些明显的东西,虽然不确定。
我目前的代码是:
路线
Route::get('admin/user/bank-details', array('as' => 'bank.edit', function()
{
$user_id = Auth::id();
$bank_details = Banks::whereRaw("(user_id = '".$user_id."')")->get();
// Return Our View...
return View::make('user.update_bank')
->with('bank_details', $bank_details);
}));
查看
{ Form::model($bank_details, array('route' => 'bank.edit')) }}
<div class="form-group">
<label for="bank_sortcode">Bank Sortcode</label>
{{ Form::text('bank_sortcode', null, array('class' => 'form-control sortcode', 'placeholder' => 'Bank Sort Code')) }}
</div><!-- /.form-group -->
{{ Form::close() }}
模型
class Banks extends \Eloquent {
// Don't forget to fill this array
protected $fillable = array('bank_sortcode');
use SoftDeletingTrait;
protected $dates = ['deleted_at'];
protected $primaryKey = "bank_id";
}
我的数据库表包含一个标题为bank_sortcode的字段,其值当前设置为“20-20-20”
由于
答案 0 :(得分:2)
您只能使用单个模型填充表单。所以改变
$bank_details = Banks::whereRaw("(user_id = '".$user_id."')")->get();
到这个
$bank_details = Banks::where('user_id', $user_id)->first();
使用此功能,您只能获得一条记录(不是记录数组) - 因此它应该可以正常工作。
P.S。你应该只在非常非常原始的情况下使用raw
雄辩的查询。否则,您将不必要地创建安全风险。