JSONAPI-Resources / JSONAPI-Resources/jsonapi-resources

Custom Operations

Ouverte
#330 1 commentaire 1 réaction 0 personnes assignées Voir sur GitHub

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

As per discussed in #129, I would like to do other tasks within a CRUD operation.

For my specific use case, I would like to create related resources upon creating a parent resource. The API is still strictly CRUD and compliant with JSONAPI, but under the hood I would like to have business logic that lives on the server side rather than the client. I found that decoupling this sort of code into service objects have been great for testing and maintainability, and it looks like Operation is exactly that.

Perhaps we can refactor it such that users of this gem can write their own operations for specific resources?

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par la discussion dans #129 et par l’abstraction Operation existante afin de comprendre comment les requêtes CRUD sont actuellement traitées. Définissez ce qu’un point d’extension pour des opérations spécifiques aux ressources devrait prendre en charge, notamment la création de ressources associées tout en conservant une API externe basée sur CRUD et conforme à JSON:API ; la finalisation doit inclure une approche service-object maintenable ainsi que des éléments démontrant que le comportement est testable.

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é
5/5
Temps estimé
Plus d'une semaine
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
25/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.