我正在尝试使用社交身份验证,并遵循文档中的代码。但是,当我运行时
python manage.py convert_to_south
我的 models.py 中出现以下错误
TypeError: Error when calling the metaclass bases
module.__init__() takes at most 2 arguments (3 given)
这是我的模型文件
from django.db import models
# Create your models here.
class UsuarioManager(models.Manager):
def create_user(self, username, email):
return self.models._default_manager.create(username=username)
class Usuario(models):
username = models.CharField(max_length=128)
last_login = models.DateTimeField(blank=True, null=True)
objects = UsuarioManager()
def is_authenticated(self):
return True
请您参考如下方法:
您正尝试使用此类扩展模块,而您可能打算扩展模块中的类: http://www.gossamer-threads.com/lists/python/python/905168
models.model 看起来像您要使用的类:https://docs.djangoproject.com/en/1.8/topics/db/models/
你的代码应该是:
from django.db import models
# Create your models here.
class UsuarioManager(models.Manager):
def create_user(self, username, email):
return self.models._default_manager.create(username=username)
class Usuario(models.model):
username = models.CharField(max_length=128)
last_login = models.DateTimeField(blank=True, null=True)
objects = UsuarioManager()
def is_authenticated(self):
return True
以下示例:
from django.db import models
class Person(models.Model):
first_name = models.CharField(max_length=30)
last_name = models.CharField(max_length=30)
