2017-07-04 39 views
0

当使用Eloquent模型尝试使用created_at列排序记录时,我遇到了一些问题。订购作品日期但不是时间。例如,如果我有3条记录与created_at值:通过created_at排序不能与Eloquent模型一起工作

  • 2017年7月4日7时16分33秒
  • 2017年7月4日5时35分01秒
  • 2017年7月4日05: 27:48

    当使用orderby('created_at','desc')或'asc'时,我有相同的输出。然而订货工作,如果我有例如

  • 2017年7月4日 5点27分48秒

  • 2017年7月3日 6点35分50秒

订购作品也当我使用原始查询时。只有当我使用雄辩模型时才会出现这个问题。

有没有人知道为什么会发生这种情况?在此先感谢

+0

什么是您的架构代码? –

+0

@AhmadMobaraki这里是我在我的控制器中:$ connections = Connection :: orderBy('created_at','desc') - > paginate(10); – Katerina

+0

我的意思是你的迁移文件!任何方式试试这个:'$ connections = Connection :: orderBy('created_at','desc') - > paginate(10);' –

回答

0

不确定您使用的是什么版本的Laravel。但是最好将php中的datetime值转换为Carbon类型以进行排序和过滤。请尝试先转换这些值,然后对它们进行排序。祝你的代码好运。

问候,

安迪·巴

+0

我使用的是Laravel 5.3,虽然我是Laravel的新手,但在使用OrderBy和雄辩模型时,它是订购记录的默认方式。不管怎么说,还是要谢谢你 – Katerina

1

喔,这是我不好!我解决了这个问题,它在获取数据时不是服务器端的问题,而是在客户端,因为我使用'dataTables'

相关问题