1

我正在使用 agrouped_collection_select在我的 rails 应用程序中设置多态关联。我正在使用它来建立 aStockholder和模型之间的关联Org以及Person. 这三个都属于一个Company

或者,更详细地说,Stockholder

has_many :people,    through: :entity_joins
has_many :orgs, through: :entity_joins

Company

has_many :people
has_many :orgs

目前grouped_collection_select设置如下:

<%= f.grouped_collection_select :global_entity, [Org, Person], :all, :model_name, :to_global_id, :name %>

问题是上面的代码提供了 ALLorgs和的列表people,而不仅仅是那些属于Company手头的。我想该选项是导致此问题的原因,:all但我无法弄清楚如何仅列出属于特定.orgspeoplecompany

所以我的问题是:我如何过滤选项,以便只有那些属于右Company( @company) 的选项可用?

提前致谢!

4

1 回答 1

2

我不知道,那是什么形式,但你应该依靠公司。

如果是公司的表格,你可以让公司通过f.object(应该是company

我认为

[f.object.orgs, f.object.persons]

代替

[Org, Person]

将工作 :)

于 2015-12-17T12:28:12.967 回答