dongliufa6380 2015-07-30 23:11
浏览 88
已采纳

Laravel约会表单模型绑定

I'm using Laravel 5.1

I got a model:

class ExampleModel extends Model {

    // ....
    protected $dateFormat = 'Y.m.d';
    protected $dates = ['first_date', 'second_date'];

    // ...
}

So when I'm indexing ExampleModel elements, the date format is correct (ex 2015.07.31)

But on an edit form it uses the default format: 2015-07-31 00:00:00

I'm using Form::model() binding.

I know I could use getFirstDateAttribute() but it's not the solution I'm looking for. Because it's not elegant at all and once I defined the $dates array, it should work automatically in every case.

So is it a bug maybe? Or am I doing something wrong?

  • 写回答

3条回答 默认 最新

  • douzao2992 2015-07-31 02:31
    关注

    I've never done this before, but it seems to work on a basic example I put together. Note that I'm just calling the toArray method on the model in the form opening tag.

    {!! Form::model($exampleModel->toArray(), ['route' => ['example-models.update', $exampleModel->id]]) !!}
        {!! Form::label('first_date', 'First Date') !!}
        {!! Form::text('first_date') !!}
    {!! Form::close() !!}
    

    The docs say that the dateFormat property determines the date format when the object is cast to json or an array.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 前置放大电路与功率放大电路相连放大倍数出现问题
  • ¥30 关于<main>标签页面跳转的问题
  • ¥80 部署运行web自动化项目
  • ¥15 腾讯云如何建立同一个项目中物模型之间的联系
  • ¥30 VMware 云桌面水印如何添加
  • ¥15 用ns3仿真出5G核心网网元
  • ¥15 matlab答疑 关于海上风电的爬坡事件检测
  • ¥88 python部署量化回测异常问题
  • ¥30 酬劳2w元求合作写文章
  • ¥15 在现有系统基础上增加功能