fix grid_characters: don't overwrite resolved IDs in assign_raw_attributes
This commit is contained in:
parent
af202716a2
commit
916b72d58d
1 changed files with 9 additions and 3 deletions
|
|
@ -268,13 +268,15 @@ module Api
|
||||||
# Assigns raw attributes from the original parameters to the grid character.
|
# Assigns raw attributes from the original parameters to the grid character.
|
||||||
#
|
#
|
||||||
# These attributes (like new_rings and new_awakening) are used by model callbacks.
|
# These attributes (like new_rings and new_awakening) are used by model callbacks.
|
||||||
|
# Note: We exclude :character_id and :party_id because they are already set correctly
|
||||||
|
# in build_new_grid_character using the resolved UUIDs, not the raw granblue_id from params.
|
||||||
#
|
#
|
||||||
# @param grid_character [GridCharacter] the grid character instance.
|
# @param grid_character [GridCharacter] the grid character instance.
|
||||||
# @return [void]
|
# @return [void]
|
||||||
def assign_raw_attributes(grid_character)
|
def assign_raw_attributes(grid_character)
|
||||||
grid_character.new_rings = character_params[:rings] if character_params[:rings].present?
|
grid_character.new_rings = character_params[:rings] if character_params[:rings].present?
|
||||||
grid_character.new_awakening = character_params[:awakening] if character_params[:awakening].present?
|
grid_character.new_awakening = character_params[:awakening] if character_params[:awakening].present?
|
||||||
grid_character.assign_attributes(character_params.except(:rings, :awakening))
|
grid_character.assign_attributes(character_params.except(:rings, :awakening, :character_id, :party_id))
|
||||||
end
|
end
|
||||||
|
|
||||||
##
|
##
|
||||||
|
|
@ -413,8 +415,12 @@ module Api
|
||||||
#
|
#
|
||||||
# @return [void]
|
# @return [void]
|
||||||
def find_incoming_character
|
def find_incoming_character
|
||||||
@incoming_character = find_by_any_id(Character, character_params[:character_id])
|
character_id = character_params[:character_id]
|
||||||
render_unprocessable_entity_response(Api::V1::NoCharacterProvidedError.new) unless @incoming_character
|
@incoming_character = find_by_any_id(Character, character_id)
|
||||||
|
|
||||||
|
unless @incoming_character
|
||||||
|
render_unprocessable_entity_response(Api::V1::NoCharacterProvidedError.new)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
##
|
##
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue