* Update test csvs * Fix count filters and refactor apply_filters * Update party_querying_concern.rb * +tests/-debug logs * Make party association optional in Job * Updates for weapon series - Change to new series numbers - Add static method for querying whether the weapon's element is changeable - Add a new method to return a text slug for the weapon's series * Add and update test data - Updates canonical.rb for loading multiple types of data with multiple types of associations - Adds test data for Guidebooks, Job Accessories, Job Skills, and Jobs - Updates test data for Weapons and Summons * Migrations - Adds series of migrations for changing the weapon's series to the values used by Cygames - Shuffled around some foreign keys * Implement BaseProcessor Processors are in charge of processing deck data straight from Granblue. * Implement CharacterProcessor Process character data from deck * Implement WeaponProcessor Process weapon data from deck * Implement JobProcessor Process job, job skill, and job accessory data from deck * Implement SummonProcessor Process summon data from deck * Update SummonProcessor to work like the others * ImportController should use processors * Process element for changeable weapons
31 lines
730 B
Ruby
31 lines
730 B
Ruby
# frozen_string_literal: true
|
|
|
|
class Job < ApplicationRecord
|
|
include PgSearch::Model
|
|
|
|
belongs_to :party, optional: true
|
|
has_many :skills, class_name: 'JobSkill'
|
|
|
|
multisearchable against: %i[name_en name_jp],
|
|
additional_attributes: lambda { |job|
|
|
{
|
|
name_en: job.name_en,
|
|
name_jp: job.name_jp,
|
|
granblue_id: job.granblue_id,
|
|
element: 0
|
|
}
|
|
}
|
|
|
|
belongs_to :base_job,
|
|
foreign_key: 'base_job_id',
|
|
class_name: 'Job',
|
|
optional: true
|
|
|
|
def blueprint
|
|
JobBlueprint
|
|
end
|
|
|
|
def display_resource(job)
|
|
job.name_en
|
|
end
|
|
end
|