class BeerAdvocate::Beer
Attributes
abv[RW]
brewery[RW]
brewery_url[RW]
name[RW]
name_url[RW]
review_count[RW]
score[RW]
style[RW]
style_url[RW]
Public Class Methods
all()
click to toggle source
# File lib/beer_advocate/beer.rb, line 38 def self.all @@all end
create_from_collection(beers_array)
click to toggle source
# File lib/beer_advocate/beer.rb, line 32 def self.create_from_collection(beers_array) beers_array.each do |beer_hash| BeerAdvocate::Beer.new(beer_hash) end end
find_beer(beer_hash)
click to toggle source
# File lib/beer_advocate/beer.rb, line 42 def self.find_beer(beer_hash) self.all.find {|beer| beer.name == beer_hash[:name] && beer.brewery == beer_hash[:brewery]} end
find_or_create_from_collection(beers_array)
click to toggle source
# File lib/beer_advocate/beer.rb, line 46 def self.find_or_create_from_collection(beers_array) beers_array.each do |beer_hash| if self.find_beer(beer_hash) == nil self.new(beer_hash) else self.find_beer(beer_hash) end end end
new(beer_hash)
click to toggle source
# File lib/beer_advocate/beer.rb, line 27 def initialize(beer_hash) beer_hash.each {|key, value| self.send(("#{key}="), value)} @@all << self end
Public Instance Methods
brewery=(brewery)
click to toggle source
# File lib/beer_advocate/beer.rb, line 5 def brewery=(brewery) new_brewery = BeerAdvocate::Brewery.find_or_create(brewery) @brewery = new_brewery new_brewery.add_beer(self) end
brewery_url=(brewery_url)
click to toggle source
# File lib/beer_advocate/beer.rb, line 17 def brewery_url=(brewery_url) brewery.brewery_url = brewery_url end
style=(style)
click to toggle source
# File lib/beer_advocate/beer.rb, line 11 def style=(style) new_style = BeerAdvocate::Style.find_or_create(style) @style = new_style new_style.add_beer(self) end
style_url=(style_url)
click to toggle source
# File lib/beer_advocate/beer.rb, line 21 def style_url=(style_url) style.style_url = style_url end