Flask-SQLAlchemy 中如何不区分大小写查询?
生活随笔
收集整理的這篇文章主要介紹了
Flask-SQLAlchemy 中如何不区分大小写查询?
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
例如下面的?User?模型,在數(shù)據(jù)庫中查詢時(shí)并不會(huì)區(qū)分大小寫
class User(db.Model):__tablename__ = 'users'id = db.Column(db.Integer, primary_key=True)username = db.Column(db.String(64), unique=True, index=True)password_hash = db.Column(db.String(128))這時(shí),如果想要在查詢時(shí)區(qū)分大小寫,就需要對(duì)表進(jìn)行一定的改動(dòng),即讓表中指定字段不區(qū)分大小寫
方法是在?db.String?中添加?collation='NOCASE'?描述,即修改為以下模型即可
class User(db.Model):__tablename__ = 'users'id = db.Column(db.Integer, primary_key=True)username = db.Column(db.String(64, collation='NOCASE'), unique=True, index=True)password_hash = db.Column(db.String(128))之后在查詢時(shí)的?username?字段就不會(huì)區(qū)分大小寫了
注:對(duì)于?collation?屬性的修改,flask-migration 并不會(huì)檢測(cè)出,需要手動(dòng)寫 migrate 語句
總結(jié)
以上是生活随笔為你收集整理的Flask-SQLAlchemy 中如何不区分大小写查询?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: HTML中Head头
- 下一篇: Flask学习记录之Flask-SQLA