0

私は2つのオブジェクトを持っています - 材料 - レッスン

各資料はレッスンを持ち、レッスンに属することができます。各レッスンは、マテリアルを持ち、マテリアルに属することができます。

作成しようとすると、material_controllerで

@material = Material.new(params[:material])

class Material < ActiveRecord::Base
   has_and_belongs_to_many :lessons

   attr_accessible :content_type, :user_id, :lesson_ids

ここにパラメータがあります

"material"=>{"content_type"=>"2",
"detail_content"=>"",
"user_id"=>"5",
"lesson_ids"=>"[]"},

create_table "lessons", :force => true do |t|
t.string   "title"
t.string   "description"
t.integer  "course_id"
t.integer  "sequence"
t.datetime "created_at",  :null => false
t.datetime "updated_at",  :null => false
end

create_table "lessons_materials", :force => true do |t|
t.integer "lesson_id"
t.integer "material_id"
end

create_table "materials", :force => true do |t|
t.integer  "content_type"
t.text     "detail_content"
t.text     "embedded_content"
t.string   "stored_file_name"
t.string   "stored_content_type"
t.integer  "stored_file_size"
t.datetime "stored_updated_at"
t.datetime "created_at",          :null => false
t.datetime "updated_at",          :null => false
t.integer  "user_id"
end
4

1 に答える 1

0

lesson_idsレッスンが関連付けられていない場合は、配列ではなく、パラメーターを nil にする必要があると思います。

于 2012-11-10T13:17:19.680 に答える