flask-rest-jsonapi
flask-rest-jsonapi copied to clipboard
Filter by dynamic schema
trafficstars
Hi, in my application, I use before_marshmallow to set the schema based on a user type, in overall it works well, but I faced a few difficulties:
- I have to provide a default schema and only then override it. Otherwise, it doesn't work. Like this:
schema = BaseSchema
def before_marshmallow(self, args, kwargs):
if (kwargs["user_type"] == "A"):
self.schema = SchemaA
elif (kwargs["user_type"] == "B"):
self.schema = SchemaB
But, again, on overall it's OK.
- Much important issue is with filtering. With my approach, I'm only able to filter by fields from BaseSchema. Is there any workaround?