diff options
Diffstat (limited to 'app/models')
-rw-r--r-- | app/models/pokeviewer/pokedex_entry.rb | 6 | ||||
-rw-r--r-- | app/models/pokeviewer/species.rb | 9 | ||||
-rw-r--r-- | app/models/pokeviewer/trainer.rb | 2 |
3 files changed, 17 insertions, 0 deletions
diff --git a/app/models/pokeviewer/pokedex_entry.rb b/app/models/pokeviewer/pokedex_entry.rb new file mode 100644 index 0000000..9be6a6a --- /dev/null +++ b/app/models/pokeviewer/pokedex_entry.rb | |||
@@ -0,0 +1,6 @@ | |||
1 | module Pokeviewer | ||
2 | class PokedexEntry < ApplicationRecord | ||
3 | belongs_to :trainer | ||
4 | belongs_to :species | ||
5 | end | ||
6 | end | ||
diff --git a/app/models/pokeviewer/species.rb b/app/models/pokeviewer/species.rb index aae66cc..400d679 100644 --- a/app/models/pokeviewer/species.rb +++ b/app/models/pokeviewer/species.rb | |||
@@ -4,6 +4,8 @@ module Pokeviewer | |||
4 | 4 | ||
5 | has_many :revisions, dependent: :restrict_with_exception | 5 | has_many :revisions, dependent: :restrict_with_exception |
6 | 6 | ||
7 | has_many :pokedex_entries, dependent: :destroy | ||
8 | |||
7 | validates :name, presence: true, uniqueness: true | 9 | validates :name, presence: true, uniqueness: true |
8 | 10 | ||
9 | validates :type_1, presence: true | 11 | validates :type_1, presence: true |
@@ -13,5 +15,12 @@ module Pokeviewer | |||
13 | 15 | ||
14 | belongs_to :ability_1, class_name: "Ability" | 16 | belongs_to :ability_1, class_name: "Ability" |
15 | belongs_to :ability_2, class_name: "Ability", optional: true | 17 | belongs_to :ability_2, class_name: "Ability", optional: true |
18 | |||
19 | def current_revisions | ||
20 | revisions. | ||
21 | where("pokeviewer_pokemon.current_id = pokeviewer_revisions.id"). | ||
22 | includes(:pokemon). | ||
23 | references(:pokemon) | ||
24 | end | ||
16 | end | 25 | end |
17 | end | 26 | end |
diff --git a/app/models/pokeviewer/trainer.rb b/app/models/pokeviewer/trainer.rb index 0ea12c8..950dac0 100644 --- a/app/models/pokeviewer/trainer.rb +++ b/app/models/pokeviewer/trainer.rb | |||
@@ -4,6 +4,8 @@ module Pokeviewer | |||
4 | 4 | ||
5 | has_many :pokemon, dependent: :nullify | 5 | has_many :pokemon, dependent: :nullify |
6 | 6 | ||
7 | has_many :pokedex_entries, dependent: :destroy | ||
8 | |||
7 | validates :number, presence: true, | 9 | validates :number, presence: true, |
8 | numericality: { greater_than_or_equal_to: 0, only_integer: true } | 10 | numericality: { greater_than_or_equal_to: 0, only_integer: true } |
9 | 11 | ||