小编Ikz*_*urb的帖子

_schema 上的 Marsmhallow ValidationError - 无效的输入类型

我一直试图找出导致此输入类型错误的原因,但似乎无法弄清楚。

模型/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)

python sqlalchemy flask flask-restful marshmallow

0
推荐指数
1
解决办法
4649
查看次数

标签 统计

flask ×1

flask-restful ×1

marshmallow ×1

python ×1

sqlalchemy ×1