relationship 關係引用和反向關係引用

2021-08-20 16:11:58 字數 1369 閱讀 6047

# relationship: 增加了關係引用,為了查詢方便. 由原先的2次查詢, 改為了1次查詢

# 乙個角色對應多個使用者:一的一方(role)定義關係引用和反向引用. 多的一方(user)定義外來鍵

# users 是為了當前模型方便查詢定義的. backref='role', 這裡的role是給關聯模型提供的查詢屬性

class role(db.model):

__tablename__ = 't_roles'

id = db.column(db.integer, primary_key=true)

name = db.column(db.string(64), unique=true)

users = db.relationship('user', backref='role')

class user(db.model):

__tablename__ = 't_users'

id = db.column(db.integer, primary_key=true)

name = db.column(db.string(64), unique=true)

role_id = db.column(db.integer, db.foreignkey('t_roles.id'))

db.create_all()

role1 = role(name='admin')

role2 = role(name='user')

db.session.add_all([role1, role2])

db.session.commit()

user1 = user(name='zs', role_id=role1.id)

user2 = user(name='ls', role_id=role2.id)

user3 = user(name='ww', role_id=role1.id)

db.session.add_all([user1, user2, user3])

db.session.commit()

# ipython或ipython3環境裡面執行

# 關係引用和反向引用查詢

in [1]: from flask_sqlalchemy import *

in [2]: user = user.query.get(1)

in [3]: user.role.name

out[3]: 'admin'

in [4]: role = role.query.get(1)

in [5]: role.users

out[5]: [, ]

Linux shell指令碼上引 單引 模式匹配

生成日期日誌,記錄前一天使用的命令 vim mylog.sh bin bash f record touch record sed n 1p student.txt awk record start cat record mydate date y m d sed n start p student...

別人的話引

工作九年了,相關的開發工作也幹了八年多。負責帶領團隊也好幾年了。面試和帶領剛工作的人也不少了。其中的優秀者不少,但是大多數都存在下面提到的幾個認識誤區。把這些問題提出來,希望對剛參加工作沒有多久的程式設計師們有所幫助,少走彎路。公司招你進來,其實最重要的就是看到你的工作能力和工作態度是可以接受的。工...

Windows Ubuntu修復UEFI引導

修復windows的efi引導需要使用到的工具為大白菜裝機工具,官網是使用大白菜製作好裝機工具以後,重啟選擇u盤啟動 一定要選 uefi 你的u盤名 那個啟動項 進入大白菜的pe,然後在桌面就有乙個引導修復工具,傻瓜式操作,我就不細說了。修復完之後就能正常啟動了。需要用到的工具為 然後選擇 try ...