第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Flask sqlalchemy 無法創(chuàng)建表

Flask sqlalchemy 無法創(chuàng)建表

慕桂英3389331 2021-07-15 18:12:40
我是python的新手。我正在嘗試創(chuàng)建表并練習(xí)如何使用 Flask-SQLAlchemy 來創(chuàng)建聲明性模型。當(dāng)我運行時db.create_all(),出現(xiàn)以下錯誤。我不確定哪個部分是錯誤的。希望有經(jīng)驗的朋友幫幫我。sqlalchemy.exc.ArgumentError: Mapper Mapper|TeacherUser|teacher_user could not assemble any primary key columns for mapped table 'teacher_user'user -> search_condition 是一對一的user <-> Teacher 是多對多的,teacherUser 是這兩個表之間的關(guān)系表。用戶 -> 類是多對一的用戶 -> 書是一對多的這是我的模型架構(gòu)from flaskr import dbfrom sqlalchemy import textfrom datetime import datetimefrom sqlalchemy.dialects.mysql import ENUM, JSONclass User(db.Model):    __tablename__ = 'user'    user_id = db.Column(db.Integer, primary_key=True)    username = db.Column(db.String(50), unique=True, nullable=False)    search_condition = db.relationship('SearchCondition', uselist=False, backref='user')    teachers = db.relationship('TeacherUser', backref=db.backref('users', lazy='joined'), lazy='dynamic')    class_id = db.Column(db.Integer, db.ForeignKey('classes.id'))    classes = db.relationship('Classes', backref='classes')    books = db.relationship('Book',backref='book')    def __init__(self, username, email):        self.username = username        self.email = email    def __repr__(self):        return '<Demo %r>' % self.username    def save(self):        db.session.add(self)        db.session.commit()class SearchCondition(db.Model):    __tablename__ = 'search_condition'    search_condition_id = db.Column(db.Integer, primary_key=True)    user_id = db.Column(db.Integer, db.ForeignKey('user.user_id'))    condition = db.Column(JSON, server_default=text(r"{}"))class TeacherUser(db.Model):    __tablename__ = 'teacher_user'    user_id = db.Column(db.Integer, db.ForeignKey('user.user_id'))    teacher_id = db.Column(db.Integer, db.ForeignKey('teacher.teacher_id'))class Teacher(db.Model):    __tablename__ = 'teacher'    teacher_id = db.Column(db.Integer, primary_key=True)    participants = db.relationship('TeacherUser', backref=db.backref('teachers', lazy='joined'), lazy='dynamic')
查看完整描述

1 回答

?
狐的傳說

TA貢獻(xiàn)1804條經(jīng)驗 獲得超3個贊

向模型添加復(fù)合主鍵

class TeacherUser(db.Model):
    __tablename__ = 'teacher_user'
    user_id = db.Column(db.Integer, db.ForeignKey('user.user_id'), primary_key=True)
    teacher_id = db.Column(db.Integer, db.ForeignKey('teacher.teacher_id'), primary_key=True)


查看完整回答
反對 回復(fù) 2021-07-27
  • 1 回答
  • 0 關(guān)注
  • 455 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號