Laravel / Eloquent:日期变异和表单模型绑定的问题

时间:2015-07-29 10:18:39

标签: laravel eloquent php-carbon

我的数据类型为date的列是日期变异的。我约会它,以便Laravel将它转换为Carbon实例,我可以在其他地方轻松使用它,我需要将它转换为Carbon实例。我在编辑表单中使用模型绑定。由于字段是日期变异,因此在编辑表单上显示为“2015-07-29 00:00:00”。我需要它采用这种格式:“2015-07-29”。

我不能使用访问器,因为我需要它作为许多其他地方的Carbon实例。

我无法在转换后显式传递值,因为我在表单partial中使用输入,我也用它来创建。

我的解决方法如下:

我发送一个标记,同时在编辑页面中包含视图部分,并使用条件创建和编辑两个不同的代码。

@if (isset($edit))
    {!! Form::text('eta', $order->eta->format('Y-m-d'), ['class' => 'form-control', 'required']) !!}
@else
    {!! Form::text('eta', null, ['class' => 'form-control', 'required']) !!}
@endif

有更好的方法吗?

1 个答案:

答案 0 :(得分:0)

我认为您可以避免使用@if$edit作为

{!! Form::text('eta', ( $order->eta ? $order->eta->format('Y-m-d') : null ) , ['class' => 'form-control', 'required']) !!}