RFC: Use annotations for parsing arguments
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 28/100
Direzione di ricerca
Inizia esaminando la proof of concept in webargs-starlette, quindi analizza AsyncParser e core.Parser e il modo in cui marshmallow Schema.TYPE_MAPPING costruisce i campi. Il lavoro è completato quando l’approccio use_annotations basato sulle annotazioni viene adattato ai parser pertinenti, in modo che gli argomenti della richiesta vengano analizzati a partire dalle annotazioni delle funzioni view.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Add a decorator that will parse request arguments from the view function's type annotations.
I've built a working proof of concept of this idea in webargs-starlette.
@app.route("/")
@use_annotations(locations=("query",))
async def index(request, name: str = "World"):
return JSONResponse({"Hello": name})
A marshmallow Schema is generated from the annotations using Schema.TYPE_MAPPING to construct fields.
The code for use_annotations mostly isn't tied to Starlette and could be adapted for AsyncParser (and core.Parser when we drop Python 2 support).
- Lingua principale
- Python
- Stelle
- 1.4k
- Fork
- 171
- Merge medio
- 8h 47m
- PR unite (30g)
- 12
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di marshmallow-code/webargs
-
Multi-value tornado headers are fetched with `get()` rather than `get_list()`Forse di nuovo libera Una pull request per questa issue è stata chiusa senza essere unita. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
marshmallow-code/webargs#1109 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Improve Falcon parserForse già presa @vytas7 l’ha presa 112 giorni fa. Aperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
marshmallow-code/webargs#1079 · 7 commenti · 2 reazioni ·
I maintainer di solito rispondono entro 1 giorno
-
Dependency DashboardAperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 20/100
marshmallow-code/webargs#1046 ·
I maintainer di solito rispondono entro 1 giorno
-
docs
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
marshmallow-code/webargs#644 · 5 commenti · 1 reazione ·
I maintainer di solito rispondono entro 1 giorno
-
question
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
marshmallow-code/webargs#549 · 15 commenti ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di marshmallow-code/webargs
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
btclib-org/btclib#3062 ·
I maintainer di solito rispondono entro 1 giorno
-
area:evals area:infra enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
jse-avl/support-bot#4 · 1 commento ·
-
bug good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
qte77/agentic-job-offer-to-application-kit#487 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
btclib-org/btclib-wallet#801 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
documentation good first issue
Difficoltà 1/5 1-3 ore Idoneità per principianti 94/100