Django的。不将外键传递给模板

时间:2013-04-25 04:45:49

标签: python django django-views

在Django中我过滤了数据并显示了结果。例如

Alabama(20)
Iowa(12)

这里“ Alabama,Iowa ”是州名,括号“20,12”内没有。特定国家提供的工作。单击Alabama或Iowa时,它会显示该特定状态下可用的作业开头。但是我没有将emp_id传递给模板页面。对此有所了解......

models.py

class User(models.Model):
     first_name= forms.CharField(max_length=30,widget=forms.TextInput())
     last_name = forms.CharField(max_length=30,widget=forms.TextInput())
     username = forms.CharField(max_length=30,widget=forms.TextInput())
     email = forms.EmailField(widget=forms.TextInput())
     password = forms.CharField(widget=forms.PasswordInput())
     companyname = forms.CharField(max_length=30,widget=forms.TextInput())

class jobs(models.Model):
     emp = models.ForeignKey(User, unique=False)
     title = models.CharField(max_length=30)
     referencecode = models.CharField(max_length=30)
     jobsummary = models.TextField()
     jobdetails = models.TextField()
     key_skills = models.CharField(max_length=30)
     states = models.CharField(max_length=30)

views.py

def search_result(request):
     details3 = jobs.objects.values('state').annotate(count=Count('state')).order_by('-count')
     return render_to_response('searchresult.html', {'details3': details3})

searchresult.html

{% for d2 in details3 %}
<li><a style="text-decoration:none;" href="/accounts/CompanyList/{{d2.emp}}/" >{{ d2.state}}({{ d2.count }})</a></li>
{% endfor %}

1 个答案:

答案 0 :(得分:0)

jobs.objects.values('state')

您只选择state字段,为什么期望emp也在那里?

jobs.objects.values('state', 'emp_id')

这是你想要的吗?