저는 Django에서 직접 만든 (Postgres) 데이터베이스를 사용하고 있습니다. "inspectdb"를 사용하여 모델을 자동으로 만들 수있었습니다. 문제는 일부 테이블은 (다 대다 관계에 대해) 여러 개의 기본 키를 가지고 있으며 장고를 통해 액세스 할 수 없다는 것입니다.django에서 'old'데이터베이스 사용
이 테이블에 액세스하는 가장 좋은 방법은 무엇입니까?
저는 Django에서 직접 만든 (Postgres) 데이터베이스를 사용하고 있습니다. "inspectdb"를 사용하여 모델을 자동으로 만들 수있었습니다. 문제는 일부 테이블은 (다 대다 관계에 대해) 여러 개의 기본 키를 가지고 있으며 장고를 통해 액세스 할 수 없다는 것입니다.django에서 'old'데이터베이스 사용
이 테이블에 액세스하는 가장 좋은 방법은 무엇입니까?
Django의 ORM (현재 v1.0.2까지)에서 복합 기본 키를 사용할 방법이 없습니다.
는 난 단지 세 가지 솔루션/해결 방법을 생각할 수 있습니다
장고는 many-to-many relationships을 지원합니다. 이 관계를 관리하기 위해 도우미 테이블을 사용하려는 경우 ManyToManyField는 사용할 테이블을 지정하는 through 인수를 취합니다. 이런 식으로 끔찍하게 복잡한 것을 모델링 할 수는 없지만, 대부분의 간단한 응용 프로그램에는 좋습니다.
+1 : 데이터베이스 수정 - 테이블에 기본 키가 여러 개 있어서는 안됩니다. –
@ S.Lott : 음, 그런 종류의 논평은 전체 자연 대 대리 키 토론을 자극하기 만하면됩니다. – Powerlord
옵션 3은 아마도 가장 쉽습니다 ... 어쨌든 오래된 데이터베이스입니다 –