在我的應用程序中,我想檢查是否存在與同一個藝術家和日期字段作爲審查模型的音樂會模型。如果不是那麼我想創建一個新的音樂會和審查,因爲音樂會has_many評論和評論belongs_to concert ...檢查模型的實例是否已經存在與某些參數
所以我寫了一個存在?在我的演唱會控制器功能:
def exists(@artist, @date)?
@concert_exists = @concerts.find_by_artist_and_date(artist: @artist, date: @date)
if @concert_exists.nil?
return false
else
return true
end
end
,然後在我的檢討控制器我想爲它創建功能做到這一點:
def create
if Concert.exists(review_params[:artist], review_params[:date])?
#add review to this concert
else
@concert = Concert.create(:artist => "artist", :venue => "venue", :date => "2014-2-2")
@review = @concert.reviews.create(review_params)
@concert.artist = @review.artist
@concert.venue = @review.venue
@concert.date = @review.date
@concert.save
end
end
我不斷收到寫着
錯誤「syntax error,unexpected keyword_else」
是我的實現不正確,是否有更簡單的方法來做我正在嘗試的?
因此,如何檢查新演唱會是否爲是否創建? – parameter
@ user2739431 rails文件說:'find_or_create_by'方法檢查是否存在具有屬性的記錄。如果沒有,則創建被調用,您不妨閱讀文檔以更好地理解它的功能,還可以在傳遞給方法 – bjhaid
的散列中包含'venue:「場所」'' ,但我需要知道它是否被創建,然後我可以添加一個已存在的評論 – parameter