Preserve custom string labels in AttributesTable headers #8815
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Resolves #8813
Fixes custom string labels being titleized in
attributes_table, which breaks acronym capitalization in show views.The
header_content_formethod was processing all labels through titleize, regardless of whether they were symbols (attribute names) or strings (custom display labels). This caused issues like:"Registration ID" → "Registration Id"
"LMnO" -> "L Mn O"
This PR makes
AttributesTableconsistent withTableFor::Column.pretty_titleby distinguishing between:Symbols (:registration_id) - processed through human_attribute_name with i18n lookup and titleize fallback
Strings ("Registration ID") - preserved exactly as provided
Changes
Modified
header_content_forinlib/active_admin/views/components/attributes_table.rbto check attribute type before processingAdded regression test in
spec/unit/views/components/attributes_table_spec.rb