我正在使用Flask with Wtforms(和Flask-WTF)来为模型CRUD创建表单.我遇到了一个我今天无法弄清楚的问题,主要是:
给定以下常量定义:
ADMIN = 0
STAFF = 1
USER = 2
ROLE = {
ADMIN: 'admin',
STAFF: 'staff',
USER: 'user'}
Run Code Online (Sandbox Code Playgroud)
并给出以下模型:
class User(db.Model, UserMixin):
id = db.Column(db.Integer, primary_key=True)
first_name = db.Column(db.String(80))
last_name = db.Column(db.String(80))
username = db.Column(db.String(80), unique=True)
email = db.Column(db.String(120), unique=True)
password = db.Column(db.String(160))
role = db.Column(db.SmallInteger, default=USER.USER)
status = db.Column(db.SmallInteger, default=USER.NEW)
Run Code Online (Sandbox Code Playgroud)
并给出以下表单生成代码:
UserEdit = model_form(models.User, base_class=Form, exclude=['password'])
Run Code Online (Sandbox Code Playgroud)
任何人都可以建议修改表单生成,将role(SmallInteger字段)表示为选择字段吗?