【发布时间】:2011-05-13 23:22:12
【问题描述】:
我正在尝试创建一个“按状态排序”功能,该功能显示,例如 .. 所有状态为“报价”的项目。我在弄清楚我应该如何处理这件事时遇到了一些麻烦。
这是我的 models.py(简化版)
class Project(models.Model):
client = models.ForeignKey(Clients, related_name='projects')
created_by = models.ForeignKey(User, related_name='created_by')
#general information
API_id = models.IntegerField(max_length=10, verbose_name='aC ProjectID', null=True, blank=True)
proj_name = models.CharField(max_length=255, verbose_name='Project Name')
...
notes = models.TextField(verbose_name='Notes', null=True, blank=True)
class Status(models.Model):
project = models.ForeignKey(Project, related_name='status')
value = models.CharField(max_length=20, choices=STATUS_CHOICES, verbose_name='Status')
date_created= models.DateTimeField(auto_now=True)
我在 views.py 中创建单独的视图没有问题,但必须有一种比创建多个视图更有效的方法。
这是我的观点,仅显示报价状态项目:
@login_required
def quote_projects(request):
project_list = Project.objects.filter(status__value__exact='Q')
return render_to_response('project/index.html',{'project_list': project_list, 'user':user}, context_instance=RequestContext(request))
任何帮助将不胜感激!
谢谢,
史蒂夫
【问题讨论】:
-
不清楚你的问题到底是什么。您是否正在尝试创建一个将采用任何状态值并显示具有该值的处方的视图?如果是这样,您不确定哪一点?
标签: django django-models filtering django-views