ruby on rails - Checking if instance of model already exists with certain paremeters -


in application want check see whether or not concert model exists same artist , date fields review model. if want add review concert, if not want create new concert , review, because concert has_many reviews , reviews belongs_to concert...

so wrote exists? function in concert controller:

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 

and in review controller i'm trying create function:

def create      if concert.exists(review_params[:artist], review_params[:date])?       #add review 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 

i keep getting error says

"syntax error, unexpected keyword_else"

is implementation incorrect , there easier way i'm attempting?

rails has method find_or_create_by don't need re-invent wheel

@concert = concert.find_or_create_by(artist: @artist, venue: "venue", date: @date) @concert.reviews.create(review_params) 

Comments

Popular posts from this blog

apache - Remove .php and add trailing slash in url using htaccess not loading css -

javascript - jQuery show full size image on click -