class RecipeSchema(ma.ModelSchema): difficulty = ma.String(validate=validate_difficulty) class Meta: model = Recipe # Fields to expose fields = ('id', 'name', 'ingredients', 'difficulty', 'prep_time', 'prep_guide')
class UserSchema(ma.ModelSchema): password = ma.String(load_only=True, required=True) class Meta: model = User sqla_session = db.session
class UserSchema(ma.SQLAlchemyAutoSchema): id = ma.Int(dump_only=True) password = ma.String(load_only=True, required=True) class Meta: model = User sqla_session = db.session load_instance = True
class CustomerSchema(ma.SQLAlchemyAutoSchema): id = ma.Int(dump_only=True) registered_on = ma.DateTime(dump_only=True) first_name = ma.String(required=True, validate=Length(1, 255)) last_name = ma.String(required=True, validate=Length(1, 255)) street = ma.String(required=True, validate=Length(1, 255)) zip_code = ma.String(required=True, validate=Length(1, 10)) city = ma.String(required=True, validate=Length(1, 255)) tel = ma.String(required=False, allow_none=True, validate=Length(max=64)) email = ma.Email(required=True, validate=Length(1, 255)) class Meta: model = Customer sqla_session = db.session load_instance = True
class UserLoginSchema(ma.Schema): username = ma.String(required=True) password = ma.String(required=True) class Meta: strict = True