2013-08-07 4 views
0

내 django 프로젝트에 사용자 계정을 관리하는 'accounts'라는 로컬 앱이 있습니다. 그것은 계정으로 시작하는 라이브 및 채워진 db 테이블을 가지고 있습니다 _.django 패키지 앱 이름 충돌

(r'^accounts/', include('accounts.urls')), 

지금, 내가 오픈 ID를 지원하기 위해 장고 - allauth를 사용하려면 : 그것은 또한 urls.py 항목이 있습니다.

(r'^accounts/', include('allauth.urls')), 

이 응용 프로그램의 이름 충돌을 해결하는 가장 좋은 방법은 무엇입니까 : 그러나, 나는 allauth도 accounts_로 시작하는 DB 테이블을 만들 accounts를 사용하고 urls.py에 포함하도록 요구하기 때문에 앱 이름 충돌이 있음을 발견?

+0

대상이 충돌하지 않는 한 두 앱 URL은 서로 작동 할 수 있습니다. – karthikr

+0

@karthikr, 어떻게 db 테이블을 만들 수 있습니까? 현재 중복 키 값이 고유 제한 "django_content_type_pkey"오류를 위반합니다. 이것은 django-allauth가 나의 계정 app 때문에 이미 존재하는 accounts_로 시작하는 db 테이블을 생성하려고하기 때문에 일어납니다. – zaphod

+0

아 .. 충돌이 URL과 만있는 것 같아요. – karthikr

답변

0

db_table to Meta을 추가

class Accounts(models.Model): 
    # ... 
    class Meta: 
     db_table = 'my_accounts' 

를 URL의에 대해서. 둘 다 사용할 수 없습니까? 예 :

(r'^accounts/', include('accounts.urls')), 
(r'^accounts/', include('allauth.urls')), 
+0

'accounts'는 클래스가 아니라 앱 이름입니다. 그래서, 나는 계정 애플 리케이션에서 모든 테이블의 이름을 바꾸곤했다. 이것은 auth_permission에서 데이터베이스 내부 오류를 제공하지만 아마도이 질문에 직각입니다. 고맙습니다. – zaphod