【发布时间】:2018-02-17 09:52:27
【问题描述】:
我有三个表: Fellows、mappingtabl、在模型 Fellow 中具有 many_to_many 关联的 events,用于访问 Fellow 的事件。 像往常一样,一个人可以参加多项活动,许多人参加一个活动..
我发现不自己编码就很难过滤事件,或者我无法理解续集文档:
我想要一个特定同伴的未来事件列表...
@fellow=Fellow[PersID: @pers_id, JourneyID: @journey_id]
@events=@fellow.events_dataset.where(Ruby: 'calc')
@events=@events.where{StartDate > Time.now()}
问题是,输出是:未初始化的常量 App::StartDate 虽然“StartDate”是 DB 中的相应列,但我从 Ruby 的角度理解输出。我从来没有告诉块 StartDate 是什么,此外它认为它是一个常数
如何告诉 sequel 比较存储在 Field events.StartDate 中的时间并将其与 Time.now 进行比较? 上面一行的直接选择使用哈希值对非常完美......
文档不是很有帮助,因为他们只是做我所做的事情:
items.where{credit > debit}.sql
# "SELECT * FROM items WHERE (credit > debit)
没有人告诉区块什么是贷方或借方......
知道如何在 where 子句的事件中访问字段 StartDate 吗?我可以迭代一个我自己的,但这有点奇怪......感觉如果数据集直接链接到表或只是关联的结果会有所不同。
【问题讨论】:
标签: ruby associations where sequel