【发布时间】:2019-09-16 09:19:30
【问题描述】:
我正在使用flask 和sqlalchemy 创建一个简单的Web api,并使用marshmallow 作为序列化程序,这里是UserModel。
class UserModel(db.Model):
__tablename__ = 'users'
id = db.Column(db.Integer, primary_key = True)
username = db.Column(db.String(120), unique = True, nullable = False)
password = db.Column(db.String(120), nullable = False)
user_role = db.Column(db.String(10), nullable = False)
access_token = db.Column(db.String(120), unique = True, nullable = True, default='as' )
refresh_token = db.Column(db.String(120), unique = True, nullable = True, default='as' )
和架构,
class UserSchema(Schema):
username = fields.Str()
password = fields.Str()
user_role = fields.Str()
access_token = fields.Str()
refresh_token = fields.Str()
当我尝试使用像这样的邮递员使用 post 请求创建用户条目时
{
"username":"test1",
"password":"test1pswd",
"user_role":"admin"
}
它在控制台上返回以下错误,
marshmallow.exceptions.ValidationError: {'_schema': ['Invalid input type.']}
我在这里做错了什么?
【问题讨论】:
标签: python marshmallow