具有自定义关联的Rails,simple_form和nested_models

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了具有自定义关联的Rails,simple_form和nested_models相关的知识,希望对你有一定的参考价值。

我正在使用simple_form的nested models,但我遇到了一个自定义Rails关联的问题,例如:

belongs_to :exclusive_club, -> { where(exclusive_clubs: {status: true}) }

我的表格很好,一切正常。所以,我没有包含上述代码,但是如果需要其他任何东西来帮助解决方案,请告诉我。但是,正如你们中的一些人可能已经猜到的那样,我遇到的问题是当我尝试在状态为false的exclusive_club上使用我的表单时,我想要更新的字段不存在。

在保留我的关联的同时解决这个问题吗?

答案

我认为你不能覆盖belogs_to lambda。因此,解决方案是将lambda移动到单独的范围中,或者使用另一个具有不同lambda的belongs_to。可以这样做:

belongs_to :exclusive_club_false, class_name: "ExclusiveClub", foreign_key: 'exclusive_club_id', -> { where(exclusive_clubs: {status: false})}

以上是关于具有自定义关联的Rails,simple_form和nested_models的主要内容,如果未能解决你的问题,请参考以下文章

rails,simple_form,保存后如何使用所选选项更新单选按钮?

Simple_Form,嵌套资源和Rails 5

Rails Simple_Form添加年份到日期字段

无法让 rails 搜索表单与 simple_form 和 sunspot 一起使用

Rails 5:将belongs_to关联与自定义名称添加到模型和迁移

Rails simple_form 没有将数据字段推送到数据库