【问题标题】:Include a ActiveModel relational object for use in Delayed Job包括用于延迟作业的 ActiveModel 关系对象
【发布时间】:2012-08-11 21:41:37
【问题描述】:

您好,我有以下问题。假设有一个用户拥有多个注释。还有一个 Note 属于一个用户。

user = User.new(name:'John')
note = user.notes.new(title:'test')

user.delay.remind_me

我希望 DJ 还包括注释,而不仅仅是用户对象。有没有办法做到这一点?我知道最好只将 user_id 存储到 DJ que 中,但我不想将此数据存储到数据库中,所以我正在尝试这个。

谢谢

【问题讨论】:

    标签: ruby-on-rails delayed-job


    【解决方案1】:

    remind_me 方法应该负责从用户那里检索注释。像这样:

    def remind_me
      self.notes.each do |note|
        # do something
      end
    end
    

    但话虽如此,我建议不要将用户对象存储在 DelayedJob 队列中。

    你可以这样做:

    User.delay.remind(user_id)
    

    【讨论】:

    • 好的,我将使用 user_id 以干净的方式进行操作。谢谢
    猜你喜欢
    • 1970-01-01
    • 2015-05-31
    • 2016-03-29
    • 1970-01-01
    • 2011-12-14
    • 2022-11-10
    • 2015-10-02
    • 2020-09-03
    • 1970-01-01
    相关资源
    最近更新 更多