【发布时间】:2011-03-21 21:12:52
【问题描述】:
我已经在 models.py 中编写了这些模型:
类用户(模型。模型): first_name = models.CharField(max_length=80) 类技能(模型。模型): 用户 = 模型。外键(用户) 标题 = models.CharField(max_length=80) level = models.IntegerField(default=3) 类工作(模型。模型): 用户 = 模型.Foriegnkey(用户) work_name = models.CharField(max_length=80) 工资 = 模型.IntegerField()现在我想从他们的用户具有一定技能的数据库中获取那些作品,并与他们一起呈现一个 html。我在views.py中写了这段代码:
def show_works(请求,技能): 作品 = Work.objects.select_related().filter(user__skill__title=skill) return render_to_response("works.html", {'works':works})但我想在该 html 中显示另一件事:我想显示该工作的用户的名字和他的技能。我使用了 select_related(),但我只能显示 first_name 但我无法达到用户的技能。
我想编写一个最佳查询来获取作品和其他额外信息,例如用户及其用户的技能!就像代码一样: (我不想为每项工作都打数据库来获得其用户的技能)
模板works.html:
{% for work in works %} {{work.work_name}} 用户是:{{work.user.first_name}} 它具有以下技能: {% for Skill in work.user.skill %} {{技能.title}} {% endfor %} {% endfor %}【问题讨论】:
标签: django-queryset