假設我有這樣的一些模型。如何獲得反向關係值列表
class Employee(models.Model):
FullName = models.CharField(max_lenth = 100)
class Projects(models.Model):
EmployeeFK = models.ForeignKey(Employee)
ProjectName = models.CharField(max_length = 100)
class Departments(models.Model):
EmployeeFK = models.ForeignKey(Employee)
DateJoined = models.DateField()
我想得到我的輸出是這樣的。
[
{"id" : 1 , "FullName" : "John Doe 1" , "projects_ids" : [1,2,3] , "departments_ids" : [1,2,5]} ,
{"id" : 2 , "FullName" : "John Doe 2" , "projects_ids" : [17,18,20] , "departments_ids" : [6,2,5]},
]
我該如何有效地做到這一點,可能有成百上千的員工。
幾年前我有一個類似的問題 - 請參考這個獲得一個大概:http://stackoverflow.com/questions/12731897/group-by-foreign-key-and-show-related-items- django – karthikr 2015-02-05 15:55:27
@karthikr你的解決方案是非常有用的,但因爲我需要獲取多個反向關係,並使用大型循環,我會遇到性能問題。 – SantaXYZ 2015-02-05 16:30:50
@SantaXYZ,我修改了我的答案,看看。我基本上嘲笑了一堆虛擬數據,併爲時間查詢。 – paidhima 2015-02-06 03:40:27