我一直试图找出导致此输入类型错误的原因,但似乎无法弄清楚。
模型/pin.py
from sqlalchemy import Column, String
class Pin(db.Model):
__tablename__ = 'pin'
pin = Column(String, primary_key=True)
Run Code Online (Sandbox Code Playgroud)
模式/pin.py
from ..models.pin import Pin
from marshmallow import fields, validate
class PinSchema(ma.Schema):
pin = fields.Str(required=True, validate=[validate.Length(5)])
class Meta:
model = Pin
fields = ('pin')
pin_schema = PinSchema()
Run Code Online (Sandbox Code Playgroud)
资源/pin.py
from flask_restful import Resource
from flask import request
from ..schemas.pin import pin_schema
class PinResource(Resource):
"""
Update current pin
Expecting:
{
'pin': 'current_pin'
'new_pin': 'new_pin'
}
"""
def patch(self):
data = request.get_json()
errors = pin_schema.validate(data['new_pin'])
if errors: …Run Code Online (Sandbox Code Playgroud)