Varia library working group XPPL.
https://gitea.xpub.nl/XPUB/XPPL
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
29 lines
705 B
29 lines
705 B
7 years ago
|
from app import db
|
||
|
from marshmallow import Schema, fields, ValidationError, pre_load
|
||
|
|
||
|
class Book(db.Model):
|
||
|
id = db.Column(db.Integer, primary_key = True)
|
||
|
title = db.Column(db.String(255))
|
||
|
author = db.Column(db.String(255))
|
||
|
file = db.Column(db.String(255))
|
||
|
|
||
|
|
||
|
def __init__(self, title, author, file):
|
||
|
self.title = title
|
||
|
self.author = author
|
||
|
self.file = file
|
||
|
|
||
|
def __repr__(self):
|
||
|
return '<Title %r>' % self.title
|
||
|
|
||
|
|
||
|
class BookSchema(Schema):
|
||
|
id = fields.Int(dump_only=True)
|
||
|
title = fields.Str()
|
||
|
author = fields.Str()
|
||
|
file = fields.Str()
|
||
|
|
||
|
def must_not_be_blank(data):
|
||
|
if not data:
|
||
|
raise ValidationError('Data not provided.')
|