laravel 5 将变量分配给表单字段

laravel 5 assign variables to forms fields

我想为我的表单元素设置占位符值。这是我的控制器:

class MyController extends Controller {
 public function index(Request $request){
   $start_time = $request->get('start_date');
   return view('showChart',compact('start_time'));
 }
}

控制器将向 showChart.blade.php 发送响应。 showChart.blade.php的一部分是:

{!! Form::open(array('url' => '/', 'class' => 'form')) !!}
{!! Form::label('START DATE') !!}
            {!! Form::text('start_date', null, 
                      array('required',  
                        'placeholder'=>{{start_time or 'default value'}}
                      ))
            !!}
{!! Form::close() !!}

没有按预期运行,会输出: ,好像代码没有执行。

我不确定我是否理解所有事情,但是你有白屏吗?这意味着 blade 错误。

{!! Form::text('start_date', null, 
                      array('required',  
                        'placeholder'=>{{start_time or 'default value'}}
                      ))
            !!}

删除 {{ }} 并将 start_time 替换为 $start_time。 关于您的默认值,您可以将其放入控制器中的 $start_time 或视图之前。

您不能在已经打开的集合中使用模板分隔符。您必须改为执行以下操作:

{!! Form::text('start_date', null, ['placeholder' => empty($start_date) ? 'default value' : $start_date, 'required' ]) !!}