2013-07-14 2 views
0

2-3 개의 추가 필드를 포함하여 더 큰 auth_user 테이블을 원합니다.Django1.5가 auth_users를 덮어 쓰지 않음

아래 코드는 추가 필드가있는 auth_user와 완전히 동일하지만 대체하지 않습니다.

settings.py

AUTH_PROFILE_MODULE = "myaccount.MyUser" 

models.py

from django.contrib.auth.models import AbstractUser 

    class MyUser(AbstractUser): 
    gender = models.DateField() 
    location = models.CharField(max_length=30) 
    birthday = models.CharField(max_length=30) 

대신 새 테이블을 만들기 myaccount_MyUser을했다. 새 테이블을 만드는 대신 auth_user 테이블을 어떻게 바꿀 수 있습니까?

답변

-1

나는 AbstractUser로 확장 할 수있는 방법을 얻을 전에 당신이 당신의 models.py에

import first django.contrib.auth.models 
import AbstractUser 

에 있다고 생각합니다. 내가이 하나가 당신을 도울 수 있다고 생각하는

+0

: 여기에 그 작업을 수행하는 방법에 대한 자세한 대답은. 그렇지 않으면 나에게 오류가 발생했을 것입니다. – zurfyx

+0

좋습니다, AbstractUser가이 두 가지를 모두 확장하기 때문에 AbstractBaseUser, PermissionsMixin도 가져 오십시오. 그래서 정확히 무슨 일이 일어나는지 알아낼 수 있습니다. – drabo2005

+0

동일한 결과를 모두 가져 왔습니다. ( 'django.contrib.auth') INSTALLED_APPS = ( 'django.contrib.auth.middleware.AuthenticationMiddleware') 설정이 MIDDLEWARE_CLASSES = 대한 파일 – zurfyx

1
+0

당신이 구출자를 도우려는 것은 대단한 일입니다. 그러나 링크 만있는 답을 남겨두면 어떤 경우에는 위험 할 수 있습니다. 당신의 대답은 좋았지 만 링크가 끊어지면 당신의 대답은 가치가 떨어질 것입니다. 따라서 답안의 기사 내용을 요약하면 도움이 될 것입니다. 명확히하기 위해 [this] (http://goo.gl/wQTjc) 질문을 참조하십시오. – pascalhein

0
내가 노력하지 않았고에서 테이블 이름을 지정하는 것입니다하지 않는 것이 좋습니다

하나 hackish 방법 모델 :

class MyUser(AbstractUser): 
    class Meta: 
     db_table = auth_user 

내가 새 테이블과 함께가는 남쪽 datamigration를 사용하여 이전의 데이터 마이그레이션을 권장합니다. 나는 이미 내가 여기를 작성하지 않은 경우에도 수입있어

Migrating existing auth.User data to new Django 1.5 custom user model?

+0

(필요하지 않은 경우) 마이그레이션하는 것보다 0에서 만드는 것이 더 좋습니다. – zurfyx

관련 문제