Aliased Attribute Names Are Not Used In Error Responses
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 38/100
Piste de recherche
Aucun fichier d’implémentation ni test n’est nommé. Reproduisez le cas délégué attribute :active, delegate: :status_is_active et suivez la manière dont les erreurs de validation sont sérialisées ; le travail est terminé lorsque le détail de l’erreur et le pointeur source de JSON:API utilisent tous deux active au lieu de status_is_active.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
This issue is a (choose one):
- [X ] Problem/bug report.
- Feature request.
- Request for support. Note: Please try to avoid submitting issues for support requests. Use Gitter instead.
Checklist before submitting:
- [ X] I've searched for an existing issue.
- I've asked my question on Gitter and have not received a satisfactory answer.
- I've included a complete bug report template. This step helps us and allows us to see the bug without trying to reproduce the problem from your description. It helps you because you will frequently detect if it's a problem specific to your project.
- [ X] The feature I'm asking for is compliant with the JSON:API spec.
Description
I have a model with an attribute named status_is_active. In the API we want this to render as active so do the following in the resource:
attribute :active, delegate: :status_is_active
If there is an API error related to this attribute, the error reports the name from the model rather than the name from the resource. For example:
{
"errors": [
{
"title": "is not included in the list",
"detail": "status_is_active - is not included in the list",
"code": "100",
"source": {
"pointer": "/data/attributes/status_is_active"
},
"status": "422"
}
]
}
Expected: the error uses the name of the attribute in the resource rather than the name used in the model. For example:
{
"errors": [
{
"title": "is not included in the list",
"detail": "active - is not included in the list",
"code": "100",
"source": {
"pointer": "/data/attributes/active"
},
"status": "422"
}
]
}
Rationale: users of the API only know about what's in the API - returning a value from the model that is aliased in the API is confusing/wrong.
Thanks!
- Langage dominant
- Ruby
- Étoiles
- 2.3k
- Forks
- 547
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Aucun guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de JSONAPI-Resources/jsonapi-resources
-
Fix incorrect translation key for parameter_not_allowed.detailPeut-être pris @pozzer l’a pris il y a 595 jours. Ouverte
Difficulté 1/5 Moins d'une heure Accessibilité débutants 85/100
-
ArgumentError with Rails 8.1Peut-être pris @SAY-5 l’a pris il y a 52 jours. Ouverte
Difficulté 3/5 1-2 jours Accessibilité débutants 50/100
JSONAPI-Resources/jsonapi-resources#1488 · 1 commentaire ·
-
Rails 8.1: jsonapi_resources DSL fails to generate relationship routes due to Resource#initialize signature changePeut-être à nouveau libre Une pull request pour cette issue a été fermée sans être fusionnée. Ouverte
Difficulté 4/5 3-5 jours Accessibilité débutants 42/100
JSONAPI-Resources/jsonapi-resources#1479 · 2 commentaires ·
-
Difficulté 4/5 3-5 jours Accessibilité débutants 30/100
JSONAPI-Resources/jsonapi-resources#1477 · 3 commentaires · 1 réaction ·
-
Fields filtering with includeOuverte
Difficulté 3/5 1-2 jours Accessibilité débutants 45/100
Toutes les issues de JSONAPI-Resources/jsonapi-resources
Issues similaires
-
NoMethodError in auth#createOuvertebugsnag
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
JoeMcB/improvcoaches#827 ·
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 72/100
TheOdinProject/curriculum#31465 ·
Les mainteneurs répondent en général sous 1 jour
-
area: docs eco: ruby good first issue help wanted lane: free-agent roadmap size: XS type: docs
Difficulté 1/5 Moins d'une heure Accessibilité débutants 66/100
arminazimi/evergreen#465 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 66/100
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 72/100
simp/puppetsync#120 ·
Les mainteneurs répondent en général sous 2 jours