【问题标题】:How to send confirmation request from one model to another如何将确认请求从一个模型发送到另一个模型
【发布时间】:2023-03-09 09:37:01
【问题描述】:

我需要一些帮助。我正在使用 Devise 构建具有以下模型的 Rails 应用程序:

用户(设计)

  • has_many :jobs
  • has_many :children

孩子

  • belongs_to :user
  • has_many :jobs
  • has_one :account

工作

  • belongs_to :user
  • has_many :children

帐户

  • belongs_to :child

孩子完成作业后,我想向用户发送确认请求,以便在用户确认时,将作业的价值添加到孩子的帐户中。我只是有点坚持如何管理该请求。任何帮助都会很棒,干杯!

【问题讨论】:

    标签: ruby-on-rails ruby activerecord


    【解决方案1】:

    我会在 Job 模型中添加一个布尔“已确认”字段,并将“false”作为默认值。 当孩子完成作业时,记录将保存在数据库中,其值已确认:false。 然后您可以安排您的控制器,以便用户可以看到待处理的作业(已确认:错误,即已创建但未确认)并有可能确认作业创建或拒绝(销毁)。

    pending_jobs = Jobs.where(confirmed :false)
    

    然后您可以列出已确认的作业并以您想要的方式显示它们。

    jobs = Job.where(confirmed: true)
    

    这是一种解决方法,但可以轻松处理和显示作业记录。

    【讨论】:

    • 感谢您的回复!我这样做(几乎)使用待处理而不是确认并创建了一个额外的索引(pending.html.erb),它显示了所有待处理的工作。然后我在该索引中添加了一个简单的表单,该表单使用pending == true 附加到每个作业。提交时,表单将同时更改 pending => false 和 completed = true。谢谢!
    • 太好了,很高兴我能帮上忙,而且您将其调整为挂起/完成的方式看起来不错! :)
    猜你喜欢
    • 1970-01-01
    • 2019-09-28
    • 2020-11-25
    • 2020-06-15
    • 2021-12-13
    • 1970-01-01
    • 1970-01-01
    • 2011-08-11
    • 1970-01-01
    相关资源
    最近更新 更多