2012-08-12 1 views
2

django-nonrel 및 django-mongodb 엔진을 사용하고 있습니다.Django-nonrel에서 unique_together는 어떻게 작동합니까?

엔진의 documentation에는 django의 메타 옵션을 지원한다고 나와 있습니다. 내가 어떤 오류가 발생하지 않고 중복을 만들 수 있기 때문에

class Bottler(models.Model): 

    location = models.CharField(max_length=20) 

    source = models.CharField(max_length=20) 

    transactionID = models.CharField() 

    class Meta: 
     unique_together = (("location","source"),) 

그러나이 근무하지 않는 것 :

나는 같은 모델에서 unique_together를 사용했습니다.

나는 데이터베이스 수준에서 unique_together이 적용됨을 알고 있습니다.

MongoDB에서 번역되는 내용은 무엇입니까? 수동으로 유효성을 검사해야합니까?

+0

당신은 튜플과 대조적으로 목록으로 시도해 보셨나요 : 'unique_together = ("location", "source",)'? 장고는 두 가지를 모두 지원하지만 어쩌면 장고 - 논レル/몽고 (dong-nonrel/mongodb)의 버그 일 수도 있습니다. –

+0

두 가지 방법 모두 시도해 보았습니다 ... 작동하지 않는 것 같습니다. –

답변

1

데이터베이스 인덱스를 동기화하려면 syncdb을 실행해야합니다.

0

어떻게 든 syncbd는 mongodb에서 색인을 업데이트하지 않습니다. 가능하다면 시도해 볼 수있는 것은 컬렉션을 삭제 한 다음 syncdb를 실행하는 것입니다. 제 경우에는 인덱스를 작성했습니다.