Class: MetacriticGames::Genre

Inherits:
Object
  • Object
show all
Extended by:
Concerns::Findable::ClassMethods, Concerns::Nameable::ClassMethods, Concerns::Persistable::ClassMethods
Includes:
Concerns::Persistable::InstanceMethods
Defined in:
lib/genre.rb

Constant Summary collapse

@@all =
[]

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Concerns::Nameable::ClassMethods

create

Methods included from Concerns::Findable::ClassMethods

find_by_name, find_or_create_by_name

Methods included from Concerns::Persistable::ClassMethods

destroy_all

Methods included from Concerns::Persistable::InstanceMethods

#save

Constructor Details

#initializeGenre

Returns a new instance of Genre.



12
13
14
# File 'lib/genre.rb', line 12

def initialize
  self.games = []
end

Instance Attribute Details

#gamesObject

Returns the value of attribute games.



8
9
10
# File 'lib/genre.rb', line 8

def games
  @games
end

#nameObject

Returns the value of attribute name.



8
9
10
# File 'lib/genre.rb', line 8

def name
  @name
end

Class Method Details

.allObject



16
17
18
# File 'lib/genre.rb', line 16

def self.all
  @@all
end

.create_genre(genre) ⇒ Object



20
21
22
# File 'lib/genre.rb', line 20

def self.create_genre(genre)
  self.find_or_create_by_name(genre)
end

Instance Method Details

#add_game(game) ⇒ Object



24
25
26
27
# File 'lib/genre.rb', line 24

def add_game(game)
  game.genre << self unless game.genre.include? self
  self.games << game unless self.games.include?(game)
end