私は特定のものを作成したProposal
後に作成しようとしていますProject
私はそのようにプロジェクトを作成します...
projects_controller.rb
...
def create
@project = current_user.organization.projects.build(params[:project])
if @project.save
redirect_to current_user.organization
else
render :new
end
end
...
プロジェクトをビルドする前に、関連するプロジェクトを作成したいProposal
project.rb
class Project < ActiveRecord::Base
...
has_one :proposal
after_save :build_project_proposal
private
def build_project_proposal
# self => #<Project id: nil, name: "FourthProject", organization_id: 1...>
# ideally i would like to call something like
# self.build_proposal but without an id, its not producing the association
end
コールバックがIDafter_save
を生成するのはなぜですか? nil
オブザーバーを使用しても同じ結果が得られました。