0

안녕하세요, 제목을 참조하는 subject_id 필드와 활동을 나타내는 다양한 필드가있는 모델 인보이스를 가지고 있습니다. 이들은 정수 필드이며 해당 송장의 각 활동 수를 나타냅니다. 내가 원했던 것은 새로운 모델 액티비티를 만드는 것인데,이 액티비티에는 label, 해당 액티비티와 같은 필드가 들어 있습니다. 모든 Invoice 인스턴스에는 고정 된 번호가 아닌 다른 수의 활동이 포함될 수 있습니다. 나는 그것을 어떻게 할 수 있는가? (아마도 그것은 정말로 간단하지만 지금은 그것을 알 수 없다)?Django 모델 - 다른 모델 인스턴스 더 참조하기

어떤 도움이 필요합니까? 감사, 누가 복음

답변

2
class Activity(models.Model): 
    label = ... 
    price = ... 

class Invoice(models.Model): 
    activities = models.ManyToManyField("Activity") 

이 하나의 활동이 많은 송장 사이에 공유 할 수 있다고 가정합니다. 당신이 상황을하려는 경우 하나의 활동이 하나의 송장에 속하지만 송장 수많은 활동을 포함 할 수있는 곳 :

class Activity(models.Model): 
    label = ... 
    price = ... 
    invoice = models.ForeignKey("Invoice") 

class Invoice(models.Model): 
    ... 
+0

덕분에, 지금이야, 다 대다 분야에 대해 여러 번 들었지만 나에게 명확하지 않았다 좀 더 분명해. 또 다른 질문 : 하나의 송장이 포함 된 모든 액티비티에 수량 (정수)을 추가해야한다면 어떻게해야합니까 (인보이스 또는 액티비티의 필드 여야한다는 것을 의미합니까? 인보이스 필드가 아니라 돈 그것을 표현하는 방법을 알지 못한다.) 볼 수 있듯이 내게는 그렇게 명확하지 않습니다 :-) – Luke