会员可以在此提问,百战程序员老师有问必答
对大家有帮助的问答会被标记为“推荐”
看完课程过来浏览一下别人提的问题,会帮你学得更全面
截止目前,同学们一共提了 132382个问题
Python 全系列/第一阶段:Python入门/编程基本概念 3301楼
Python 全系列/第一阶段:Python入门/编程基本概念 3302楼
Python 全系列/第五阶段:数据库编程/MySQL数据库的使用 3303楼
Python 全系列/第十五阶段:Python 爬虫开发/爬虫基础 3304楼
Python 全系列/第二十二阶段:数据分析软件/数据可视化Tableau 3305楼

image.png

Python 全系列/第一阶段:Python入门/编程基本概念 3306楼
JAVA 全系列/第一阶段:JAVA 快速入门/飞机大战小项目训练 3309楼
Python 全系列/第二十一阶段:Python数据分析项目-旧/旅游景点票价预测 3310楼
Python 全系列/第一阶段:Python入门/编程基本概念 3312楼
Python 全系列/第一阶段:Python入门/编程基本概念 3314楼

from DBUtil import Base,Session
from sqlalchemy import Column,Integer,String,ForeignKey
from sqlalchemy.orm import relationship

class User(Base):
    __tablename__ = 't_connect_user'
    id = Column(Integer,primary_key = True, autoincrement = True)
    uname = Column(String(50)) 
    item = relationship('Item')

class Item(Base):
    __tablename__ = 't_connect_item'
    price = Column(Integer)
    uid = Column(Integer,ForeignKey("t_connect_user.id"))
    user = relationship('User',backref='item')

def create_table():
    User1 = User(uname = 'nihao')
    Item1 = Item(price = 40)
    User1.item = Item1
    with Session() as ses:
        ses.add(User1)
        # User1.item.append(Item1)
        ses.commit()

# class LoginUser(Base):
#   __tablename__ = 't_user_login'
#   id = Column(Integer,primary_key=True,autoincrement=True)
#   uname = Column(String(32),nullable=False)
#   passwd = Column(String(32),nullable=False)
#   user = relationship('User',uselist=False) # 不友好,总有警告


# class User(Base):
#   __tablename__ = 't_user_2'
#   id = Column(Integer,primary_key=True,autoincrement=True)
#   name = Column(String(32),nullable=False,name='name')
#   gender = Column(String(1))
#   address = Column(String(64))
#   login_id = Column(Integer,ForeignKey('t_user_login.id'))
#   login_user = relationship('LoginUser')

# def create_data():
#   login = LoginUser(uname = 'baizhan', passwd = '123')
#   user = User(name='百战',gender = '女',address ='北京')
#   # login.user = user # 建立关联关系

#   user.login_user = login

#   with Session() as ses:
#     ses.add(user)
#     ses.commit()

if __name__ == '__main__':
    Base.metadata.create_all()
    # create_table()

错误:

File "/Users/bytedance/python学习/SQLAlchemy/SQLAlchemy_env/lib/python3.11/site-packages/sqlalchemy/orm/mapper.py", line 693, in __init__

    self._configure_pks()

  File "/Users/bytedance/python学习/SQLAlchemy/SQLAlchemy_env/lib/python3.11/site-packages/sqlalchemy/orm/mapper.py", line 1400, in _configure_pks

    raise sa_exc.ArgumentError(

sqlalchemy.exc.ArgumentError: Mapper mapped class Item->t_connect_item could not assemble any primary key columns for mapped table 't_connect_item'



这个问题到底出自在哪呢?? 差了快一小时了也没找到

Python 全系列/第八阶段:轻量级Web开发利器-Flask框架/Flask数据库 3315楼

课程分类

百战程序员微信公众号

百战程序员微信小程序

©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园
网站维护:百战汇智(北京)科技有限公司
京公网安备 11011402011233号    京ICP备18060230号-3    营业执照    经营许可证:京B2-20212637