【发布时间】:2012-01-06 03:01:45
【问题描述】:
我有一个对象,我正在为其开发一个具有许多属性的控制器。但是,由于我创建的数据模型,我必须编辑的大多数属性都是通过其他表中的关联保存的。 EG:我的文章通过标签表(以及其他表中保存的大约 20 个其他属性)具有标签。该文章通过多态关联等具有许多其他属性。
关联效果很好,可以保存每个属性的多个条目。然而,困难的一件事是简化控制器的编辑操作。通常你可以保存 @article = Article.find(params[:id]) 并且所有的属性都会显示出来。这意味着表单具有提供的当前属性,并且该人可以进行更改。
但是,对于通过关联保存的内容,这些字段为空。我有一个 shiv 解决方案,例如,@article.tag_list = @article.tags.map(&:name)。这让该字段现在可以显示标签。
但是,为每个属性执行此操作会在控制器中的编辑操作中添加很多行。有没有更好的办法?
如果有一些我应该发布的代码,我可以——只是没有发布,因为它现在很乱,所以我想我会解释一下。
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 associations polymorphic-associations