【问题标题】:Rails named has_many with a limit命名为 has_many 的 Rails 有限制
【发布时间】:2011-01-07 11:54:39
【问题描述】:

我想实现与 x 条记录的 has_many 关联,并且记录将被命名。

让我们更好地解释一下。在previous question 中,我询问如何使用可选择的标记语言制作文本区域,我们得出的结论是我需要一个单独的模型,Field,它具有我需要的多个字段(languageoriginal 和 @ 987654325@)。

现在我希望能够制作一个模型,比如说User,它有两个这样的字段。例如:about_mebiography。每次创建用户时如何创建这些字段,在编辑用户时编辑它们并在编辑用户时销毁它们?我将如何简单地显示它们:User.about_meUser.biography

提前感谢您的回答。

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 associations polymorphic-associations


    【解决方案1】:

    David 的解决方案创建了联合模型。

    然后您必须在用户表单中包含配置文件的表单。您必须在 User 模型中使用 accepts_nested_attributes_for 方法。

    要在删除用户时销毁配置文件,请将dependent => :destroy 添加到两个模型之间的关系中。

    【讨论】:

      【解决方案2】:

      您需要使用回调 (http://api.rubyonrails.org/classes/ActiveRecord/Callbacks.html)。

      例如,在您的 User 模型中,有一个 after_create 回调,它将创建必要的字段。

      另外,有一个用于检查 user.changed 的​​ after_save 回调吗?如果不同,请更新字段。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2010-11-12
        • 1970-01-01
        • 1970-01-01
        • 2017-06-29
        • 1970-01-01
        • 2018-12-03
        • 2012-03-11
        • 1970-01-01
        相关资源
        最近更新 更多