在Rails 3.0中,我有一个TagsController,它处理一个名为Tag的模型,但是ActsAsTaggableOn :: Tag,这意味着生成的URL错误:acts_as_taggable_on_tag_url而不是tag_url。
这迫使我把这种可憎的行为写成:
form_for @tag, :as => :tag, :url => @tag.new_record? ? tags_url : tag_url(@tag), :html => {:method => @tag.new_record? ? :post : :put} do |form|
...
有更好的方法吗?以某种方式告诉Rails该模块的控制器名称不同?
我知道我可以将它分成两个不同的文件,但我不愿意。
答案 0 :(得分:0)
我认为您使用ActsAsTaggableOn :: Tag模型而不是Tag没有任何区别。 @tag类只会很重要。如果@tag有ID,则以其他方式创建。 尝试使用form_for。
的一般语法