У меня есть модель Сообщений , в которой много сообщений на многих языках .Это немного нестандартно, но для иллюстрации:
class Post < ActiveRecord::Base
has_one :eng_post, :dependent => :destroy # <-- HAS_ONE!
accepts_nested_attributes_for :eng_post, :allow_destroy => true
end
Т.е. пост имеет один EngPost.В то время как EngPost определен в модели как:
class EngPost < ActiveRecord::Base
belongs_to :post
has_many :eng_comments, :dependent => :destroy
accepts_nested_attributes_for :eng_comments, :allow_destroy => true
attr_accessible :eng_comments_attributes
end
И, наконец, модель eng_comments:
class EngComment < ActiveRecord::Base
belongs_to :eng_post, :foreign_key => "eng_post_id"
end
Routes.rb определяет:
resources :posts do
resource :eng_posts
end
resource :eng_post do
resources :eng_comments
end
resources :eng_comments
Проблема - не удается обработать сообщение с eng_comments, я пробовал:
<% form_for ([@post, @post.eng_post, @post.eng_post.eng_comments.build]) do |f| %>
и пробовал:
<% form_for @comment do |f| %>
Это приводит к ошибке
undefined method `post_eng_post_eng_comments_path' for #<#<Class:0x000000067de2a8>:0x000000067c4498>
Спасибо.