JSON または返された 1 対多の sqlalchemy クエリの完全な文字列を返そうとしています。この時点でマシュマロを使用して実行しようとしていますが、不完全なデータを返し続けます
次のように定義された2つのモデルがあります。
class UserModel(db.Model):
__tablename__ = 'usermodel'
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(80), unique=True)
password = db.Column(db.String(120))
weekday = db.relationship('weekDay', cascade='all,delete-orphan', single_parent=True, backref=db.backref('usermodel', lazy='joined'))
class weekDay(db.Model):
__tablename__ = 'weekday'
id = db.Column(db.Integer, primary_key=True)
#Defining the Foreign Key on the Child Table
dayname = db.Column(db.String(15))
usermodel_id = db.Column(db.Integer, db.ForeignKey('usermodel.id'))
2 つのスキーマを定義しました
class WeekdaySchema(Schema):
id = fields.Int(dump_only=True)
dayname = fields.Str()
class UserSchema(Schema):
id = fields.Int(dump_only=True)
username = fields.Str()
password = fields.Str()
weekday = fields.Nested(WeekdaySchema)
そして最後にコマンドを実行します(userName変数に名前を渡します)
userlist = UserModel.query.filter_by(parentuser=userName).all()
full_schema = UserSchema(many=True)
result, errors = full_schema.dump(userlist)
print (result)
Json化する前に、結果を印刷して確認します。平日のオブジェクトは完全に空です
'weekday': {}
これを正しく行う方法を知っている人はいますか