JSONAPI-Resources / JSONAPI-Resources/jsonapi-resources
Support foreign_type in has_one association
Personne n'a encore pris cette issue.
- Langage dominant
- Ruby
- Étoiles
- 2.3k
- Forks
- 546
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
I am updating an app to use jsonapi:resources and have had to change a model association name without changing the underlying table. This model had a polymorphic field :resource which is now called :item, however the underlying table still has fields resource_id and resource_type.
In my model I can do this:
belongs_to :item, polymorphic: true, foreign_key: "resource_id", foreign_type: "resource_type"
However when I do this in my resource file:
has_one :item, polymorphic: true, foreign_key: 'resource_id', foreign_type: 'resource_type'
I receive an error "undefined method item_type=". From the docs it looks like foreign_key is supported but foreign_type is not. Could this be easily fixed?
Thanks for a great gem, it's been a pleasure to work with!
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
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.
Piste de recherche
Commencez par la gestion de l’association has_one et la prise en charge existante de foreign_key, puis reproduisez les configurations de modèle et de ressource présentées dans l’issue. Le travail est terminé lorsque foreign_type est accepté sans appeler la méthode non définie item_type=, avec une couverture des associations polymorphes dont le nom du modèle diffère de la colonne de type sous-jacente.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- rails, ruby
- Domaine
- api, backend
- Type d'issue
- Fonctionnalité
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 42/100