ruby on railsを使用したタスク管理のためのWebアプリケーションを開発しています。 私はuser
とtask
の2つのモデルを持っています。モデルは次のようになりますアソシエーションin Rails 4
タスクが作成されたときにユーザーにタスクを割り当てることです。しかし、私はcreate
のアクションでそれを行う方法がわからないtasks_controller
。私のアクションを作成して、作成したときに管理者がタスクを割り当てするたびに、この
def create
@task = Task.new(task_params)
respond_to do |format|
if @task.save
@user = User.assigned_user(task_params)
@user.tasks << Task.last
format.html { redirect_to @task, notice: 'Task was successfully created.' }
format.json { render :show, status: :created, location: @task }
else
format.html { render :new }
format.json { render json: @task.errors, status: :unprocessable_entity }
end
end
end
のように見える、それはundefined method tasks for #<User::ActiveRecord_Relation:0x007fe7b1c60610>
を言ってエラーが発生します。誰もがこの問題で何ができるのかを助けることができますか?
この商品は? '@user = User.assigned_user(task_params)'また、次の行でこれを使用します: '@user.tasks << @ task'、データベースで不必要にクエリを実行するotherwhise。 – developer033
assigned_userは、ユーザーモデルのメソッドで、データベースから取得したユーザーを返します。 –