0

@users でいくつかのユーザー オブジェクトを取得します。params[:task] にタスク オブジェクトがあります。ここで、タスク オブジェクトを保存し、すべての @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)

私が得るのは、次のようなエラーだけです。どうすればいいのですか?

4

1 に答える 1

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 }
于 2013-02-08T13:25:26.093 に答える