Fix error where :preview_state didn’t have an attribute

This commit is contained in:
Justin Edmund 2025-02-27 21:49:58 -08:00
parent 8c5be1ed69
commit e078b625c2

View file

@ -78,6 +78,7 @@ class Party < ApplicationRecord
include GranblueEnums include GranblueEnums
# Define preview_state as an enum. # Define preview_state as an enum.
attribute :preview_state, :integer
enum :preview_state, { pending: 0, queued: 1, in_progress: 2, generated: 3, failed: 4 } enum :preview_state, { pending: 0, queued: 1, in_progress: 2, generated: 3, failed: 4 }
# ActiveRecord Associations # ActiveRecord Associations
@ -400,7 +401,7 @@ class Party < ApplicationRecord
# @return [void] # @return [void]
def skills_are_unique def skills_are_unique
validate_uniqueness_of_associations([skill0, skill1, skill2, skill3], validate_uniqueness_of_associations([skill0, skill1, skill2, skill3],
[:skill0, :skill1, :skill2, :skill3], %i[skill0 skill1 skill2 skill3],
:job_skills) :job_skills)
end end
@ -410,7 +411,7 @@ class Party < ApplicationRecord
# @return [void] # @return [void]
def guidebooks_are_unique def guidebooks_are_unique
validate_uniqueness_of_associations([guidebook1, guidebook2, guidebook3], validate_uniqueness_of_associations([guidebook1, guidebook2, guidebook3],
[:guidebook1, :guidebook2, :guidebook3], %i[guidebook1 guidebook2 guidebook3],
:guidebooks) :guidebooks)
end end
@ -438,7 +439,7 @@ class Party < ApplicationRecord
def update_element! def update_element!
main_weapon = weapons.detect { |gw| gw.position.to_i == -1 } main_weapon = weapons.detect { |gw| gw.position.to_i == -1 }
new_element = main_weapon&.weapon&.element new_element = main_weapon&.weapon&.element
update_column(:element, new_element) if new_element.present? && self.element != new_element update_column(:element, new_element) if new_element.present? && element != new_element
end end
## ##
@ -449,7 +450,7 @@ class Party < ApplicationRecord
# @return [void] # @return [void]
def update_extra! def update_extra!
new_extra = weapons.any? { |gw| GridWeapon::EXTRA_POSITIONS.include?(gw.position.to_i) } new_extra = weapons.any? { |gw| GridWeapon::EXTRA_POSITIONS.include?(gw.position.to_i) }
update_column(:extra, new_extra) if self.extra != new_extra update_column(:extra, new_extra) if extra != new_extra
end end
## ##