Comments (5)
@revmischa I'm open to adding a kwarguments
decorator. Would you like to submit a PR?
from flask-smorest.
Thanks for the feedback.
I see several options
-
Create a new decorator that would be an alias to
arguments
withas_kwargs
set toTrue
(your suggestion). -
Add a
DEFAULT_AS_KWARGS
class attribute to set the default value foras_kwargs
. -
If we went ahead with #44 (comment), we could have
use_args
anduse_kwargs
to specify deserialization schemas, andarguments
(orparameters
) to add extra information in the docs.
I'd like to give it some thought before doing anything.
Meanwhile, if you want to avoid duplication, you can subclass Blueprint
to add use_kwargs
. It should be straightforward.
from flask-smorest.
Oh and while I'm making a wishlist - always having strict=True enabled would be nice too :)
from flask-smorest.
I think this is a marshmallow issue.
strict is always True in marshmallow 3. If you're starting a new project, you could try to use marshmallow 3.
If you're stuck on marshmallow 2 for now, you may use a BaseSchema but don't erase Meta
when subclassing:
class BaseSchema(ma.Schema):
class Meta:
strict = True
class MySchema(BaseSchema):
class Meta(BaseSchema.Meta): # Don't forget to also subclass Meta (or duplicate strict = True below)
fields = ...
from flask-smorest.
It might be a good idea to edit ArgumentsMixin class as following:
from functools import partial
class ArgumentsMixin:
def kwarguments(self):
return partial(self.arguments, as_kwargs=True)
from flask-smorest.
Related Issues (20)
- Are query based blueprint arguments after path arguments formally unsupported? HOT 5
- Support for mixed multipart forms HOT 5
- ImportError: cannot import name '_app_ctx_stack' from 'flask' HOT 4
- flask smorest import error HOT 1
- Swagger submitting incorrect format for Model-based form inputs HOT 4
- Proposal: Allow register_blueprint option to name the Blueprint outside of Flask HOT 1
- Werkzeug Security Issue
- How can i create pagination for method POST HOT 2
- Missing response header in OpenAPI documentation HOT 3
- How to show docs with nginx url prefix set? HOT 1
- Different `unknown` arguments behaviour locally vs on production HOT 2
- What's the best way to handle multiple routes per function? HOT 1
- Swagger isn't obeying required=True for IPv4 field HOT 6
- Schema validation of mandatory fields on a blueprint with a HTTP PATCH method containing only modified fields HOT 5
- TypeError: argument of type 'SchemaMeta' is not iterable when running flask --app '...' openapi print HOT 1
- Improving error handlers to satisfy both template and API server use cases HOT 6
- Endpoint isn't getting data from json_or_form arguments when using the Swagger UI HOT 8
- flask-smorest with subdomains and redoc HOT 2
- How to allow alternative response schema eg. for 4xx status codes HOT 5
- Issues in Streaming response from flask-smorest HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from flask-smorest.