結合テーブル ( ) を使用して多くのオブジェクトに関連付けられている単純なUser
モデルがあります。ここで、カンマ区切りの町 ID のリストを割り当てることによって、特定のユーザーに属する町を更新したいと思います (HTTP POST パラメーターとして送信されたフォームから直接取得します)。Town
has_and_belongs_to_many
ユーザー オブジェクトは、次のコントローラー コードを使用して保存されます。
@current_object.update_attributes(params[:user])
たとえば、に設定されているparams[:user]
インクルード。town_ids
1,4,6
残念ながら、これはユーザーと町の関連付けをまったく更新しません。ただし、手動で行うと、美しくうまく機能します。
User.find(:first).town_ids = "1,4,6" # this saves automatically
collection_singular_ids
これらのフィールドをまとめて割り当てることができないということでしょうか?
私のユーザーモデルには以下が含まれています:
has_and_belongs_to_many :towns
# necessary for mass-assignment, otherwise it results in an exception:
attr_accessible :town_ids
どんな助けでも大歓迎です。