![](/img/trans.png)
[英]NameError - FLASK SQLACHEMY - Reusing Database Models i.e. Columns
[英]inserting data in assotiation table with three columns in flask sqlachemy
我有兩個在 flask 煉金術中具有多對可能關系的表:
users_chats_association = db.Table(
"users_chats",
db.Column("user_id", db.Integer, db.ForeignKey("users.id")),
db.Column("chat_id", db.Integer, db.ForeignKey("chats.id")),
db.Column('some_number', db.String)
)
class User(db.Model):
__tablename__ = "users"
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String)
chats = db.relationship(
"Chat", secondary=users_chats_association, back_populates="users"
)
class Chat(db.Model):
__tablename__ = "chats"
id = db.Column(db.Integer, primary_key=True)
title = db.Column(db.String)
users = db.relationship(
"User", secondary=users_chats_association, back_populates="chats"
)
如果我想插入值,我使用這樣的代碼:
user = User(name='first_user')
db.session.add(user)
chat = Chat(title='First_chat')
db.session.add(chat)
chat.users.append(user)
db.session.commit()
但是此代碼插入到前兩列的關聯表中。 我應該如何在第三個“some_number”列中插入值?
id_of_need_user = (User.query.filter(User.name=='first_user').first())
update_query = update(users_chats_association).\
where(users_chats_association.c.user_id==id_of_need_user.id).\
values(some_number='12345888')
db.session.execute(update_query)
db.session.commit()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.