0
advice에서 Sqlalchemy 작성자가 SQL Expression Language을 사용하여 데이터의 초기 대량 삽입을 작성하려고합니다. 자세한 내용은을 참조하십시오.SQL 식 언어를 사용하여 다 대다 관계를 작성하는 방법
이 자습서에서는 사용자와 주소 간의 일대 다 관계의 예를 가정합니다. 그들은 executemany() 메소드의 사용에 의해 관계를 만들 :
>>> conn.execute(addresses.insert(), [
... {'user_id': 1, 'email_address' : '[email protected]'},
... {'user_id': 1, 'email_address' : '[email protected]'},
... {'user_id': 2, 'email_address' : '[email protected]'},
... {'user_id': 2, 'email_address' : '[email protected]'},
... ])
INSERT INTO addresses (user_id, email_address) VALUES (?, ?)
((1, '[email protected]'), (1, '[email protected]'), (2, '[email protected]'), (2, '[email protected]'))
COMMIT
<sqlalchemy.engine.ResultProxy object at 0x...>
어떻게 지금 내 디자인에 내가 여러 대다 관계를 가지고있다. 하나는 사용자와 조직 사이입니다. 내가 그래서
# assuming a relationship like:
# organizations = db.Table('organizations',
# db.Column('organization_id', db.Integer, db.ForeignKey('organization.id')),
# db.Column('user_id', db.Integer, db.ForeignKey('user.id')))
# class User(db.Model):
# ...
# organizations = db.relationship('Organization', secondary=organizations,
# backref=db.backref('users', lazy='dynamic'))
# class Organization(db.Model):
# ...
def db_reset():
# lets reset it
db.drop_all()
db.create_all()
# establish our connection
engine = create_engine(SQLALCHEMY_DATABASE_URI)
conn = engine.connect()
# load in our users
user_insert = User.__table__insert()
for user in users: # users is a list of named tuples
conn.execute(user_insert, name=user.name, role=user.role,
organizations= [orgA,orgB,...etc] # how do i do this?
Flask-Sqlalchemy.을 사용하고 내 질문에 내 코드뿐만 아니라 내 타이틀에 포함되어 있습니다. SQL 표현 언어를 사용하여 다 대다 관계를 구축하려면 어떻게해야합니까?