首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >设置Expiration的Rails日期查询

设置Expiration的Rails日期查询
EN

Stack Overflow用户
提问于 2014-08-25 15:32:28
回答 1查看 822关注 0票数 0

我正在创建一个市场应用程序,卖家可以在其中列出要出售的商品。我想设定一个终止日期,这样30天以上的列表就不会出现在网站上。

我在网上发现了一些类似的例子,但无法让这个查询工作起来。

代码语言:javascript
复制
@listings = Listing.where('created_at <= ?', Date.created_at + 30.day)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-08-25 15:49:28

您希望查询其created_at时间为>=当前日期(Date.current) - 30天(30.day)的项。因此,查询应该简单地是:

代码语言:javascript
复制
@listings = Listing.where('created_at >= ?', Date.current - 30.day)

您还可以将Date.current替换为Time.nowDateTime.now

UPDATE:作为user3334690在评论中提到的,建议您将其作为一个模型方法,因为它应该在模型层中:

代码语言:javascript
复制
# app/models/listing.rb
def self.not_expired
    where('created_at >= ?', Date.current - 30.day)
end

# now in controllers you can do something like
@listings = Listing.not_expired
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25489399

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档