0
我試圖超越教程級別的知識,並通過擴展AbstractBaseUser元類來創建自己的用戶類,但我無法找到實際顯示如何與此類型進行交互的示例通過API的模型。這裏是我的模型:正確使用django AbstractBaseUser類
from __future__ import unicode_literals
from django.db import models
from django.utils.translation import ugettext as _
class Country(models.Model):
iso3166 = models.CharField(_("country ISO 3166"), max_length=3, default="840", primary_key=True)
name = models.CharField(_("country name"), max_length=40, default="USA")
def __unicode__(self):
return self.name
class MyUser(AbstractBaseUser):
postal_code = models.CharField(_("zip code"), max_length=5, blank=True, default='')
country = models.ForeignKey(Country)REQUIRED_FIELDS = ['country']
在這裏,我試圖通過殼與它交互:
from myapp.models import MyUser, Country
from django.utils.translation import ugettext as _
c = Country(iso3166="840",name=_("United States of America"))
c.save()
q = Country.objects.get(iso3166="840")
g = MyUser(username="bob",password="pass1",first_name="Robert",last_name="Smith",email="[email protected]",country=q)
的正常工作,直到在那裏我定義克線,從那裏我得到一個錯誤:
TypeError: 'username' is an invalid keyword argument for this function
我得到了什麼錯誤說,不介意它,但我不知道創建一個新的MyUser對象是什麼正確的語法。