python – django auth用户截断电子邮件字段
发布时间:2020-11-17 02:07:09 所属栏目:Python 来源:互联网
导读:我有一个 django.contrib.auth用户模型的问题,邮件max_length是75. 我正在接收来自facebook api的超过75个字符的电子邮件地址,我需要(真的想)将它们存储在用户中,用于来自Facebook连接和其他用户的连续性. 我可以通过手动编辑我们的mySql数据库中的字段来解决
|
我有一个 django.contrib.auth用户模型的问题,邮件max_length是75. 我正在接收来自facebook api的超过75个字符的电子邮件地址,我需要(真的想)将它们存储在用户中,用于来自Facebook连接和其他用户的连续性. 我可以通过手动编辑我们的mySql数据库中的字段来解决“第1列”中的“数据截断列”电子邮件问题,但是有没有更好的解决方法?最好是每当我重新设置模式更改时,我都不需要我手动编辑数据库? 只要可以将其添加到重置脚本或initial_data.json文件,我可以编辑数据库. 解决方法EmailField 75字符长度在django中是硬编码的.你可以这样解决这个问题:from django.db.models.fields import EmailField
def email_field_init(self,*args,**kwargs):
kwargs['max_length'] = kwargs.get('max_length',200)
CharField.__init__(self,**kwargs)
EmailField.__init__ = email_field_init
但这会改变所有的EmailField字段长度,所以你也可以尝试: from django.contrib.auth.models import User
from django.utils.translation import ugettext as _
from django.db import models
User.email = models.EmailField(_('e-mail address'),blank=True,max_length=200)
两种方式最好将此代码放在initST中的任何模块之前,在您的INSTALLED_APPS中的django.contrib.auth之前 (编辑:南阳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- Python – 立即引导大量敌人
- python:re.sub的replace函数不接受额外的参数 – 如何避免
- python – 处理包含多个字符编码的字符串
- 如果我在Python 3中将文件截断为零,我是否还需要寻找零位?
- python – pip安装eyeD3模块.找不到libmagic
- python – Opencv Homography矩阵H和Inverse H转换点没有得
- 我如何确定python使用的类型的确切大小
- python – matplotlib.pyplot.imshow:在使用属性“sharex”
- python – Django:如何在佛罗里达州的设置中设置EDT时区
- 什么python代码为二元运算符生成所有可能的分组(树)
