したがって、プロジェクトは多くのカテゴリを持つことができ、カテゴリはプロジェクトに属するというように、プロジェクトとカテゴリの関係があります。なんとか機能させましたが、レールサーバーを再起動しても機能しません。以下に示すコードは、レールサーバーの再起動前と再起動後のものなので、コードに関係があると思います...
したがって、モデルが必要なのか、コントローラーが必要なのか、フォームが必要なのかがわかりません。そのため、問題が発生している場所として、カテゴリ コントローラーから create メソッドを投稿しました。
def create
@project = Project.find(params[:project_id])
@category = @project.categories.create(params[:category].merge(:user_id => current_user.id))
if @category.save
redirect_to project_tasks_path(@project.id), :flash => {:success => 'Created a Category! Now you can create tasks!'}
else
redirect_to :back, :flash => {:error => 'We could not create an category. You need to enter a name.'}
end
end
これは精神的な作成行で発生し、エラーがスローされます。
RuntimeError in CategoriesController#create
Called id for nil, which would mistakenly be 4 -- if you really wanted the id of nil, use object_id
Rails.root: /home/adam/Documents/Aptana Studio 3 Workspace/StartPoint
Application Trace | Framework Trace | Full Trace
app/controllers/categories_controller.rb:14:in `create'
Request
Parameters:
{"utf8"=>"✓",
"authenticity_token"=>"qbJyilRiMtwOyPDq9HQFO4JME+TPkh/cCEEqPZPxGDw=",
"category"=>{"category"=>"ffffffff"},
"commit"=>"Create Category",
"project_id"=>"2"}
これは、作成を押すとスローされます。アイデアはありますか、それとももっとコードを表示する必要がありますか?