1
在我的日曆應用程序中,註冊和未註冊的用戶都可以創建會議。在我meetings_controller:我如何允許爲已註冊和未註冊的用戶創建一個新對象?
def new
@meeting = Meeting.new
@meeting = current_user.meetings.new(meeting_params) if current_user
end
def create
respond_to do |format|
if @meeting.save
format.html { redirect_to @meeting, notice: 'Meeting was successfully created.' }
format.json { render :show, status: :created, location: @meeting }
else
format.html { render :new }
format.json { render json: @meeting.errors, status: :unprocessable_entity }
end
end
end
def meeting_params
params.require(:meeting).permit(:name, :start_time)
end
因此,如果存在CURRENT_USER它創建current_user.meetings.new(meeting_params),如果不是,它應該沒有任何用戶創建只是一個Meeting.new。但是,它不工作,我得到一個錯誤:
undefined method `save' for nil:NilClass
respond_to do |format| if @meeting.save format.html { redirect_to @meeting, notice: 'Meeting was successfully created.' } format.json { render :show, status: :created, location: @meeting } else
它運作良好,如果有一個CURRENT_USER,但爲什麼沒有用戶的會議定義爲「nill」如果我提到,喊只是一個Meeting_new?我怎樣才能使它工作? 謝謝!
@Guarav謝謝,但它並沒有幫助,同樣的錯誤。 ( – Jakov
@Jakov查看我的更新回答 –
@Guarav是的,它幫助!謝謝! – Jakov