2015-01-11 1 views
2

장고 - 복귀를 사용하여 장고에서 외래 키 관계에 대한 변경을 추적하는 방법을 이해하려고합니다. 한마디로 장고 - 복귀의 외래 키에 대한 역방향 관계 추적

, 나는 단지 하나에 코드 목록에 속 Code의를 포함하는하는 Codelist을 모델링하는 것을 시도하고있다. 이것은과 같이 외래 키를 사용하여 모델링 할 수 있습니다

class CodeList(models.Model): 
    name = models.CharField(max_length=100) 

class Code(models.Model): 
    value = models.PositiveIntegerField(max_length=100) 
    meaning = models.CharField(max_length=100) 
    codelist = models.ForeignKey(CodeList,related_name="codes") 

또한, 코드를 편집 할 수있는 유일한 방법은 코드 목록을 통해 액세스 관리자 사이트에서 인라인 양식을 사용하는 것입니다. 모든 의도와 목적을 위해 코드는 코드 목록에 속해 있으므로 ...

복귀에 관해서는 예외입니다.

코드 편집을위한 비 관리자 양식이 있으므로 reversion.middleware.RevisionMiddleware을 사용하여 모든 수정 사항을 추적합니다.

내가 원하는 것은 codelist의 기록을 볼 때 코드로 변경해야하지만 Django-reversion API에서 그 코드를 알아낼 수 없습니다. 문제는 API가 코드를 추적하고 코드 목록에 대한 변경 사항을 확인하는 것이지 역으로 된 관계를 따라 가면서 다른 방법은 아닙니다.

이 작업을 수행하는 방법을 알고있는 사람이 있습니까?

답변

2

Its not well documentedIts very well documented, I just couldn't find it,하지만 당신은 너무처럼 따라야 할 필드와 반비례 관계를 추가 할 수 있습니다

reversion.register(CodeList, follow=["codes"]) 
+2

FK에 대한 정보에 액세스하는 방법에 대한 어떤 생각을? 'versions [1] .field_dict.items()'는 모든 필드를 제공하지만 FK 필드는 나열하지 않습니다. – Rileywiley