在laravel 5中编辑表单时无法显示值

时间:2015-11-06 15:59:40

标签: laravel laravel-5 laravel-5.1

单击某个值时,表单中没有输出。但是我可以在使用return函数时看到这些值。这是我的代码:

ReportController

      public function edit($id)
{
    $crime_edit = CrimeReport::findOrFail($id);
    $victim_info = VictimProfile::findOrFail($id);
    return $victim_info;
    //return $victim_info->firstname;
    //return $victim_info;
    $display_crime_type = CrimeType::lists('crime_type','id');
    $display_crime_name = CrimeName::lists('crime_description','id');
    return view('crimereports.edit',compact('crime_edit','victim_info','display_crime_name,'display_crime_type'));
}

编辑视图页

{!! Form::model($crime_edit,['method' =>'PATCH','route'=>'crime_reports.update',$crime_edit->id],'class'=>'form-horizontal']) !!}

          <div class="form-group">
               {!! Form::label('victim_name', 'Victim Name',['class'=>'col-md-3 control-label']) !!}
          <div class="col-md-3">
               {!! Form::text('victim_name', null, ['class' => 'form-control','placeholder' => 'Firstname']) !!}      
          </div>
          <div class="col-md-2">
               {!! Form::text('v_middle_name', null, ['class' => 'form-control','placeholder' => 'Middlename']) !!}      
          </div>
          <div class="col-md-3">
             {!! Form::text('v_last_name', null, ['class' => 'form-control','placeholder' => 'Last Name']) !!} 
        </div>
        </div>
{!! Form::close() !!} 

我错过了什么吗?

2 个答案:

答案 0 :(得分:1)

null是默认值。我认为Form::model假设要绑定值,但您是否尝试删除null?

我没有使用old('field_name', $model->field_name),但作为默认值,我总是放GET。旧功能会同时查看POST和{{1}},如果匹配的话,则会显示。如果不存在,则使用第二个值。

答案 1 :(得分:1)

根据您的调试输出语句(&#34; return $ victim_info;&#34;),看起来您正在尝试将表单绑定到$ crime_edit模型,同时访问$ victim_info模型中的值。您不能同时将表单绑定到两个不同的模型,因此如果空白受害者名称字段不是$ crime_edit模型的属性,则您当前的实现将不起作用。

您需要明确添加$ victim_info-&gt; victim_name等,以代替&#39; null&#39;值,或将表单绑定到$ victim_info模型而不是$ crime_edit模型。

如果victim_name,v_middle_name和v_last_name是$ crime_edit模型的属性,那么我不知道。