Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Django auth Pengguna memotong bidang email

EmailField 75 karakter panjang hardcoded di Django. Anda dapat memperbaikinya seperti itu:

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

tetapi ini akan mengubah SEMUA panjang bidang EmailField, jadi Anda juga dapat mencoba:

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)

kedua cara itu akan lebih baik untuk menempatkan kode ini di init dari modul apa pun SEBELUM django.contrib.auth di INSTALLED_APPS Anda

Sejak Django 1.5 Anda dapat menggunakan model kustom Anda sendiri berdasarkan model AbstractUser, oleh karena itu Anda dapat menggunakan bidang &panjang Anda sendiri. Dalam model Anda:

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)

Dalam pengaturan:

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. SQL:Bagaimana cara menjaga urutan baris dengan DISTINCT?

  2. Apa cara tercepat untuk memasukkan nilai dari datagridview ke database mysql

  3. Cara memperbaiki MySql:ukuran kolom indeks terlalu besar (Laravel bermigrasi)

  4. Kueri dengan parameter MySQL

  5. Bagaimana cara mengubah tipe VARCHAR menjadi DATETIME menggunakan ALTER di MySQL?