Make users and aliases email case insensitive

master
kaiyou 7 years ago
parent 249f5d94d6
commit eb40ea830f

@ -149,7 +149,7 @@ class Email(object):
context.current_parameters["localpart"], context.current_parameters["localpart"],
context.current_parameters["domain_name"], context.current_parameters["domain_name"],
) )
return db.Column(db.String(255), return db.Column(db.String(255, collation="NOCASE"),
primary_key=True, nullable=False, primary_key=True, nullable=False,
default=updater) default=updater)

@ -0,0 +1,28 @@
""" Set the nocase collation on the user and alias tables
Revision ID: 9c28df23f77e
Revises: c162ac88012a
Create Date: 2017-10-29 13:28:29.155754
"""
# revision identifiers, used by Alembic.
revision = '9c28df23f77e'
down_revision = 'c162ac88012a'
from alembic import op
import sqlalchemy as sa
def upgrade():
with op.batch_alter_table('user') as batch:
batch.alter_column('email', type_=sa.String(length=255, collation="NOCASE"))
with op.batch_alter_table('alias') as batch:
batch.alter_column('email', type_=sa.String(length=255, collation="NOCASE"))
def downgrade():
with op.batch_alter_table('user') as batch:
batch.alter_column('email', type_=sa.String(length=255))
with op.batch_alter_table('alias') as batch:
batch.alter_column('email', type_=sa.String(length=255))
Loading…
Cancel
Save