/ / Django não criando tabelas para meus modelos de usuário personalizados - django, model, syncdb

Django não criando tabelas para meus modelos de usuário customizados - django, model, syncdb

Usando o Django 1.5, testando o recurso de usuário personalizado.

Eu só tenho 3 modelos no projeto. Aqui estão eles,

class CustomUser(AbstractBaseUser, PermissionsMixin):
class CustomUserManager(BaseUserManager):
class testModel (models.Model):

Sem erros quando eu fizer python manage.py validate. Quando eu faço python manage.py sqlall lancer (lancer é o nome do aplicativo), mostra o seguinte,

BEGIN;
CREATE TABLE "lancer_testmodel" (
"id" serial NOT NULL PRIMARY KEY,
"first_name" varchar(30) NOT NULL,
"last_name" varchar(30) NOT NULL
)
;

COMMIT;

O que aconteceu com o código SQL para os outros dois modelos? Ele apenas cria tabelas para modelos que herdam explicitamente models.Model?

Informação adicional,

  1. Eu adicionei AUTH_USER_MODEL = "lancer.CustomUser" no final do meu arquivo settings.py pela documentação do Django
  2. Comentei todos os outros aplicativos instalados em settings.py. eu sei que muitos deles foram usados ​​por contrib.auth, mas desde que eu estou usando um novo modelo de usuário personalizado, acabei de comentar tudo o resto.

É assim que parece agora,

INSTALLED_APPS = (
#"django.contrib.auth",
#"django.contrib.contenttypes",
#"django.contrib.sessions",
#"django.contrib.sites",
#"django.contrib.messages",
#"django.contrib.staticfiles",
# Uncomment the next line to enable the admin:
# "django.contrib.admin",
# Uncomment the next line to enable admin documentation:
# "django.contrib.admindocs",
"lancer",
)

Respostas:

4 para resposta № 1

Bem PermissionsMixin depende de

"django.contrib.auth",
"django.contrib.contenttypes",

se você comentar apenas django.contrib.auth e descomentar django.contrib.contenttypes, você terá esse erro

CommandError: Um ou mais modelos não validaram: users.myuser: "groups" possui uma relação m2m com o modelo <class "django.contrib.auth.models.Group">, que não foi instalado ou é abstrato. users.myuser: "user_permissions" possui uma relação m2m com o modelo <class "django.contrib.auth.models.Permission">, que não foi instalado ou é abstrato.

se você descomentar django.contrib.auth e comente django.contrib.contenttypes

Você terá este erro

CommandError: Um ou mais modelos não validaram: auth.permission: "content_type" tem uma relação com o modelo <class "django.contrib.contenttypes.models.ContentType">, que não foi instalado ou é abstrato.

e se você descomentar os dois, o sqlall precisa gerar sua tabela: D