python – django auth用户截断电子邮件字段

python – django auth用户截断电子邮件字段,第1张

概述我有一个 django.contrib.auth用户模型的问题,邮件max_length是75. 我正在接收来自facebook api的超过75个字符的电子邮件地址,我需要(真的想)将它们存储在用户中,用于来自Facebook连接和其他用户的连续性. 我可以通过手动编辑我们的mySql数据库中的字段来解决“第1列”中的“数据截断列”电子邮件问题,但是有没有更好的解决方法?最好是每当我重新设置模式 我有一个 django.contrib.auth用户模型的问题,邮件max_length是75.

我正在接收来自facebook API的超过75个字符的电子邮件地址,我需要(真的想)将它们存储在用户中,用于来自Facebook连接和其他用户的连续性.

我可以通过手动编辑我们的MysqL数据库中的字段来解决“第1列”中的“数据截断列”电子邮件问题,但是有没有更好的解决方法?最好是每当我重新设置模式更改时,我都不需要我手动编辑数据库?

只要可以将其添加到重置脚本或initial_data.Json文件,我可以编辑数据库.

解决方法 EmailFIEld 75字符长度在django中是硬编码的.你可以这样解决这个问题:
from django.db.models.fIElds import EmailFIElddef 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 Userfrom django.utils.translation import ugettext as _from django.db import modelsUser.email = models.EmailFIEld(_('e-mail address'),blank=True,max_length=200)

两种方式最好将此代码放在initST中的任何模块之前,在您的INSTALLED_APPS中的django.contrib.auth之前

总结

以上是内存溢出为你收集整理的python – django auth用户截断电子邮件字段全部内容,希望文章能够帮你解决python – django auth用户截断电子邮件字段所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1207326.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-04
下一篇 2022-06-04

发表评论

登录后才能评论

评论列表(0条)

保存