我在@users中获得了几个用户对象。我在params [:task]中有一个任务对象 现在我想保存taskobject并在所有@users和该任务之间添加关系......
@users = User.find(session[:user_id], params[:user_task])
@task = @users.tasks.create(params[:task])
@task.owner_id = session[:user_id]
if @task.save
redirect_to task_path(@task)
我得到的是一个错误,如:Array的未定义方法`tasks'。 我该怎么做?
答案 0 :(得分:1)
您需要先初始化新任务,分配其所有者并保存,如果成功,则可以创建与所有用户的关联。
像这样:
@task = Task.new(params[:task])
@task.owner_id = session[:user_id]
if @task.save
@users = User.find(session[:user_id], params[:user_task])
@users.each { |user| user.tasks << @task }