Junior
What frameworks have you used with Flask?
sobes.tech AI
Answer from AI
I used the following frameworks and libraries with Flask to extend its functionality:
- Flask-SQLAlchemy: for working with databases via SQLAlchemy ORM.
- Flask-Migrate: for database migrations.
- Flask-WTF: for creating and validating forms.
- Flask-Login: for managing user sessions and authentication.
- Flask-RESTful: for quickly creating RESTful APIs.
- Flask-Marshmallow: for serialization and deserialization of data.
- Flask-CORS: for handling CORS headers in browser requests.
- Jinja2: the templating engine that comes with Flask.
Here's an example of using some of them:
from flask import Flask, request, jsonify
from flask_sqlalchemy import SQLAlchemy
from flask_marshmallow import Marshmallow
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///test.db'
db = SQLAlchemy(app)
ma = Marshmallow(app)
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(80), unique=True, nullable=False)
def __repr__(self):
return '<User %r>' % self.username
class UserSchema(ma.Schema): # Schema for serialization/deserialization
class Meta:
fields = ('id', 'username')
user_schema = UserSchema()
users_schema = UserSchema(many=True)
@app.route('/user', methods=['POST'])
def add_user():
username = request.json['username']
new_user = User(username=username)
db.session.add(new_user)
db.session.commit()
return user_schema.jsonify(new_user)
@app.route('/users', methods=['GET'])
def get_users():
all_users = User.query.all()
return users_schema.jsonify(all_users)
if __name__ == '__main__':
# db.create_all() # Uncomment to create tables
app.run(debug=True)