我一直在使用以下模型来研究Django的多对多领域:
class ProjectLanguage(models.Model):
title = models.CharField(max_length=15)
def __str__(self):
return self.title
class Project(models.Model):
title = models.CharField(max_length=30)
img = models.CharField(max_length=50)
main_text = models.TextField(default="main project description ...", null=True, blank=True)
languages = models.ManyToManyField(ProjectLanguage)
def __str__(self):
return self.title
我想获取按其ProjectLanguage标题排序的项目列表。如何使用Django实现此目标?
谢谢
标记
答案 0 :(得分:0)
您可以定义这样的方法:
class Project(models.Model):
...
def ordered_languages(self):
return self.languages.all().order_by('title')
或者您可能希望将through table与ordering一起使用。