gpt4 book ai didi

ruby-on-rails - 我如何每天验证一篇文章?

转载 作者:太空宇宙 更新时间:2023-11-03 18:21:22 26 4
gpt4 key购买 nike

我正在尝试创建一个验证,以确保从 00:00 开始每天 24 小时发布一篇文章。请问如何在 Rails 中完成?

我做了以下操作,但我不确定将 today 方法放在哪里。非常感谢更简单的替代方案。

def today
where(:created_at => (Time.now.beginning_of_day..Time.now))
end

然后我向文章模型添加了一个验证:

validate :time_limit, :on => :create

并在同一个模型中定义time_limit:

def time_limit
if user.articles.today.count >= 1
errors.add(:base, "Exceeds daily limit")
end

但我在创建操作中不断收到“无方法”错误。

undefined method `today'

我不太确定该把这个方法放在哪里。

最佳答案

你应该为此使用作用域:

class Article
scope :today, -> { where(:created_at => (Time.now.beginning_of_day..Time.now.end_of_day)) }
end

http://apidock.com/rails/ActiveRecord/NamedScope/ClassMethods/scope

关于ruby-on-rails - 我如何每天验证一篇文章?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17776245/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com