fix: Error messages for relations#349
Open
mesemus wants to merge 1 commit into
Open
Conversation
* Replaced "Invalid field value" error message with
a specific message, for example,
"Invalid relation value {value!r} for field {self.key!r}."
* Updated tests
mesemus
force-pushed
the
feat-bad-relation-id-errors
branch
from
June 5, 2026 07:25
3f5cc7b to
2f6bca5
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Description
There are two issues with how errors in relation fields (e.g., references to vocabularies) are handled in RDM records.
marshmallowlibrary. This allows even invalid drafts to be saved: incorrect fields are omitted from the draft and validation messages are returned in theerrorsfield of the response.Relation errors, however, are handled later during record commit. As a result, they raise an exception, the draft is not saved, and the response is serialized differently.
This PR addresses only the first issue. The second is architectural in nature, and resolving it would require a larger change that cannot realistically be completed in time for v14.
Problem and solution
Previously, relation validation errors used generic messages such as
"Invalid field value", which made debugging difficult, especially in complex record structures with nested relations.This change replaces those generic messages with more specific ones that include:
This makes it significantly easier to identify and resolve relation validation issues during development and debugging.
Checklist
Ticks in all boxes and 🟢 on all GitHub actions status checks are required to merge:
Frontend
Reminder
By using GitHub, you have already agreed to the GitHub’s Terms of Service including that: