Я использую SQLAlchemy и СУБД PostgreSQL.
Пусть есть:
class Product(db.Model):
__tablename__ = 'products'
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String)
def __init__(self, name):
self.name = name
и сделано
>>> p1 = models.Product(u'Курага')
>>> db.session.add(p1)
>>> db.session.commit()
>>> p2 = models.Product(u'Apple')
>>> db.session.add(p2)
>>> db.session.commit()
>>> from sqlalchemy import func
>>> db.session.query(models.Product).filter(func.lower(models.Product.name) == u'курага').all()
[]
>>> db.session.query(models.Product).filter(func.lower(models.Product.name) == u'apple').all()
[<app.models.Product object at 0x1035f4310>]
а также
>>> db.session.query(models.Product).filter(models.Product.name.ilike(u'%курага%')).all()
[]
>>> db.session.query(models.Product).filter(models.Product.name.ilike(u'%apple%')).all()
[<app.models.Product object at 0x103b2c210>]
Как заставить работать с кириллицей?
Заранее спасибо и заранее сори, если недогуглил (: