How To Create A Json Object From Tree Data Structure In Database?
I'm using flask with the following model: class NewsCategory(db.Model): __tablename__ = 'news_category' id = db.Column(db.Integer, primary_key=True) title = db.Column(d
Solution 1:
I use a library called Flask-Restless for querying the database and returning json. It's made to work with SQLAlchemy.
If you're not looking to integrate with something like this, you can subclass your SQLAlchemy model and just run to_json() method on it.
class NewsCategory(db.Model, JsonSerializer)
classJsonSerializer(object):
"""A mixin that can be used to mark a SQLAlchemy model class which
implements a :func:`to_json` method. The :func:`to_json` method is used
in conjuction with the custom :class:`JSONEncoder` class. By default this
mixin will assume all properties of the SQLAlchemy model are to be visible
in the JSON output. Extend this class to customize which properties are
public, hidden or modified before being being passed to the JSON serializer.
"""
__json_public__ = None
__json_hidden__ = None
__json_modifiers__ = Nonedefget_field_names(self):
for p in self.__mapper__.iterate_properties:
yield p.key
defto_json(self):
field_names = self.get_field_names()
public = self.__json_public__ or field_names
hidden = self.__json_hidden__ or []
modifiers = self.__json_modifiers__ ordict()
rv = dict()
for key in public:
rv[key] = getattr(self, key)
for key, modifier in modifiers.items():
value = getattr(self, key)
rv[key] = modifier(value, self)
for key in hidden:
rv.pop(key, None)
return rv
Credit: Github Overholt project (author of Flask-Security)
Post a Comment for "How To Create A Json Object From Tree Data Structure In Database?"