3

//////// アップデート

これは、フォームを更新として送信したときの開発ログからの出力です

LogoCategory Load (0.3ms) SELECT logo_categories.* FROM logo_categoriesINNER JOIN logosON logo_categories. id= logos. logo_category_idインナージョインlogos_postsオンlogosid= logos_posts. logo_idどこlogos_postsで。post_id= 61

//////////////

以下のようなアプリのセットアップがあった場合、なぜこのようなエラーが発生するのか、誰にもわかりますか...どこにも情報が見つかりません。

ActiveRecord::HasManyThroughNestedAssociationsAreReadonly in PostsController#update

関連付け 'Post#logo_categories' は、複数の関連付けを経由しているため、変更できません。

post.rb

has_and_belongs_to_many :logos
has_many :logo_categories, :through => :logos  

ロゴ.rb

  belongs_to :logo_category
  has_and_belongs_to_many :posts

logo_category.rb

has_many :logos
has_and_belongs_to_many :posts

そして私のテーブルは...

投稿 (id)、ロゴ (id)、logos_posts (id、logo_id、logo_category_id)、logo_categories (id)

投稿レコードを編集し、logo_category チェックボックスをオンまたはオフにしたときにのみ、投稿モデルの _form を保存しようとするとエラーが発生します。

どんなアイデアでも大歓迎!ありがとう

4

1 に答える 1

1

試す:

post.rb

has_and_belongs_to_many :logos

logo.rb

has_and_belongs_to_many :posts

編集済み

'logo_categories'の移行は次のようになります。

  create_table :logo_categories do |t|
    t.references :logo
    t.references :post
    t.timestamps
  end

リンクを見てください、それはあなたがHABTMを使うのを助けるでしょう:

http://asciicasts.com/episodes/17-habtm-checkboxes

http://ramblings.gibberishcode.net/archives/rails-has-and-belongs-to-many-habtm-demystified/17

于 2012-04-05T10:29:04.393 に答える