CodeForPhilly / CodeForPhilly/stately

Initiate action should/could be specified in URL

Ouverte
#17 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
discussion
Langage dominant
Python
Étoiles
22
Forks
5
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

The way the client is designed, it gets the workflow definition from `GET /api/travel-request/`. If there's an `id` property, it renders the `data` and the `events`. If there's multiple `state.actions`, it renders action buttons. If there's only 1 `state.actions`, it renders the form for it. If there's more than 1 `state.actions`, it waits until you select one of the action buttons, and renders that form. On submission, the form posts to `POST /api/travel-request//?token=xx`.

At the moment, this fails on the initiate action, I think because by design we expected clients to not include the action on the initiate `POST`. But it's actually pretty simple to do that since (a) we're providing the name of the action in the response to their `GET` request, and (b) they're already using part of that response for their `POST` request (the template).

My guess is you probably added extra logic to identify what the default action was. Perhaps this isn't necessary, and we can just expect clients to include the action name in every `POST` request.

Thoughts @mjumbewu ?

Guide de contribution

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

Piste de recherche

Start by tracing the client flow from GET /api/travel-request/ to the POST URL, then inspect how the initiate action is handled when building that URL. Confirm the intended behavior with the issue discussion before changing anything. Done means POST requests include the action slug consistently, including initiation, and the resulting action form submission works.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
python
Domaine
api, backend
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

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