Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

django auth Trường email người dùng cắt ngắn

Độ dài 75 ký tự của EmailField được mã hóa cứng bằng django. Bạn có thể sửa lỗi này như thế này:

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, *args, **kwargs)
EmailField.__init__ = email_field_init

nhưng điều này sẽ thay đổi TẤT CẢ độ dài trường Email, vì vậy bạn cũng có thể thử:

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)

cả hai cách tốt nhất là đặt mã này vào init của bất kỳ mô-đun nào TRƯỚC KHI django.contrib.auth trong INSTALLED_APPS

của bạn

Vì Django 1.5, bạn có thể sử dụng mô hình tùy chỉnh của riêng mình dựa trên mô hình AbstractUser, do đó bạn có thể sử dụng các trường và độ dài của riêng mình.

from django.contrib.auth.models import AbstractUser
from django.db import models

class User(AbstractUser):
    email = models.EmailField(_('e-mail address'), blank=True, max_length=200)

Trong cài đặt:

AUTH_USER_MODEL = 'your_app.models.User'


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Truy vấn chuyển đổi từ datetime sang date mysql

  2. Thêm giờ, phút, giây vào SQL Date

  3. Cắt ngắn tất cả các bảng trong cơ sở dữ liệu MySQL trong một lệnh?

  4. Gửi ArrayList từ android sang php MySQL

  5. Sự nhầm lẫn mệnh đề WHERE với PDO