當前位置:成語大全網 - 書法字典 - sqlalchemy只能檢查壹列嗎?

sqlalchemy只能檢查壹列嗎?

(百度的編輯功能太差了,不支持markdown/markup,縮進也沒有了。讓我們湊合壹下。)

請註意,下面的查詢返回壹個簡單的tuple對象,而不是DeclarativeMeta對象,這意味著沒有列名。

使用with_entites方法進行查詢:

User.query.with_entities(用戶標識,用戶部門標識)。全部()

2.如果存在外鍵關系,可以使用join進行關聯,join的參數應該使用關系的backref值:

#模型用戶

類用戶(數據庫。型號):

id = db。列(db。整數,primary_key = True)

用戶名= db。列(db。字符串(40),唯壹=真,可空=假)

密碼= db。列(db。字符串(32),可空=假)

電子郵件= db。列(db。字符串(120),唯壹=真)

realname = db。列(db。字符串(20))

部門標識=數據庫。列(db。整數db。外鍵(department.id)

def __init__(自己,用戶名,密碼,電子郵件,真實姓名,部門標識):

self.username =用戶名

self.password =密碼

self.email =電子郵件

self.realname = realname

self.dept_id =部門標識

#車型部門

班級部門(db。型號):

id = db。列(db。整數,primary_key=True)

部門名稱=數據庫。列(db。字符串,唯壹=真,可空=真)

users = db . relationship(‘User‘,backref =‘dept‘,lazy =‘dynamic‘)

def _ _ init _ _(self,department_name):

self.department_name =部門名稱

def _ _ repr _ _(self):

return‘& lt;部門% r & gt;‘% self.department_name

查詢方法:

User.query.with_entities(用戶標識,用戶用戶名,部門名)。加入(用戶部門)。全部()

相當於:

選擇“用戶”。id為user_id,“用戶”。username作為用戶名,department.department_name作為來自“用戶”的department_department_name加入department.id =“用戶”的部門。部門標識