elixir - 今天使用 Ecto Phoenix 创造记录的最佳方式是什么?

标签 elixir phoenix-framework ecto

来自 Rails Active Record,我想知道如何才能实际获取今天创建的记录。

在 Rails 中我们可以这样做

User.where(created_at:Date.today.beginning_of_day..Date.today.end_of_day)

或者更加简洁

scope :created_today, ->(date = Date.today) { where(created_at: date..date.end_of_day) }

User.created_today

使用 Ecto 实现相同功能的最佳方法是什么?

最佳答案

您最好的选择是使用 Timex图书馆。

使用这个库你可以做这样的事情:

date = DateTime.today |> Timex.datetime

query = from m in Model, where: m.inserted_at >= ^Timex.beginning_of_day(date), where: m.inserted_at <= ^Timex.end_of_day(date)

Repo.all(query)

关于elixir - 今天使用 Ecto Phoenix 创造记录的最佳方式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37782742/

相关文章:

metaprogramming - Elixir 中的宏可以覆盖函数应用程序吗?

elixir - Elixir 中的 Exq(或等效)和集成测试

elixir - 某些 sql 查询已退出 DBConnection.ConnectionError PID(XXX)

elixir - Erlang 包加载失败

elixir - 什么是Elixir Bang函数?

elixir - 如何使用 Ecto 对模型删除设置 foreign_key_constraint?

elixir - 获取场景组件/场景的 PID

elixir - 如何使用 Ecto 的 has_many 和 cast_assoc

sql - 在 SQL 连接查询期间计算 Ecto 中的虚拟字段

mysql - 外生灵药 : Sum values in preloaded association