我正在使用 Laravel 集体表单和 HTML。我有一个看起来像这样的表单字段:
<div class="md-form" >
{!! Form::text('date', (!empty($entry['date_submit']) ? $entry['date_submit']->format('M j, Y') : null), ['class' =>'date-time form-control datepicker ' . ($errors->has('date_submit') ? ' validate invalid' : '' )]) !!}
{!! Form::label('date', 'Select a date') !!}
</div>
我还在使用 MDBootstrap 来获得外观和感觉。这将创建一个材料设计风格的日期选择器并添加一个名为的隐藏字段date_submit
来存储所选日期。这意味着当我处理表单时,我实际上必须添加以下行来补偿:
$input = $request->all();
$input['date'] = $input['date_submit'];
很好,没问题。
我还使用 Request 进行所有验证,因此如果验证失败,表单会在触摸 store 方法之前返回。验证工作正常,没有问题。
问题是,当验证失败但记录了日期时,它会用“未定义的未定义”而不是输入的日期预填充日期字段(因为日期字段名称不匹配)。
到目前为止,这是日期和时间字段的问题,因为它们在 MDBootstrap 中都有很好的材料设计选择器。
- 有没有办法告诉
Form::text
输入值使用不同的字段名称(date_submit
而不是date
),同时仍将字段名称保留为date
- 我应该寻找一种不同的方式来处理验证而不是使用请求吗?