【问题标题】:after_create callback: flash messageafter_create 回调:闪烁消息
【发布时间】:2012-06-11 17:45:27
【问题描述】:

在用户注册我使用 Devise 的 Rails 3.2.3 应用程序后,会触发 after_create 回调,尝试创建组织记录。

如果此create 验证失败,我如何才能显示错误消息?我应该覆盖设计控制器吗?问题是,错误与组织的创建有关,而不是用户(我有一个非常普通的用户模型设置)。

我在用户模型中做这样的事情:

# after_create callback method
...
    unless new_org_user.save
      errors.add("Warning", "Organisation is invalid" )
    end
...

【问题讨论】:

    标签: ruby-on-rails callback devise


    【解决方案1】:

    由于您在 after_create 回调中触发事件,因此记录已成功创建,因此不会出现闪烁消息。

    您为什么不尝试将其移至关系关联并要求验证孩子喜欢

    class User < ActiveRecord::Base
      has_one :organization
      accepts_nested_attributes_for :organization
    end
    
    class Organization < ActiveRecord::Base
      belongs_to :user
    end
    

    这样,如果组织无效,它将无法通过验证

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-05
      • 1970-01-01
      • 1970-01-01
      • 2013-09-22
      • 1970-01-01
      • 2020-10-09
      相关资源
      最近更新 更多