我正在尝试根据gadb\u投票模型中的操作id访问gadb\u操作模型中的信息。我一开始只获取特定立法者的信息,然后试图获取与立法者投票的行动相关的法案。你知道吗
现在,我的action\u列表只存储action\u id,而不存储gadb\u action模型中我想在模板中使用的相关信息。你知道吗
在模板访问的for循环之外存储信息的最佳方法是什么?有没有办法写入一个空的查询集?你知道吗
谢谢你的帮助!你知道吗
查看
def each_member(request,legislator_id):
each_member = get_object_or_404(gadb_legislator, legislator_id=legislator_id)
each_vote = gadb_vote.objects.filter(legislator_id=legislator_id)
action_list = []
for i in each_vote:
action = gadb_action.objects.filter(action_id=i.action_id)
action_list.append(action)
context = {
'each_member': each_member,
'each_vote': each_vote,
'action_list': action_list
}
return render(request, "eachmember.html", context)
模型
class gadb_action(models.Model):
action_id = models.IntegerField(unique=False, max_length=4, primary_key=True)
bill_id = models.IntegerField(unique=False, max_length=12)
class gadb_vote(models.Model):
vote_id = models.IntegerField(unique=False, max_length=11,primary_key=True)
legislator_id = models.IntegerField(unique=False, max_length=11)
action_id = models.IntegerField(unique=False, max_length=11)
模板
{% for i in action_list %}
{{i.bill_id}}
{{i.action_id}}
{% endfor %}
你的模型坏了。你知道吗
首先,尽管主键与问题没有直接关系,但您需要将主键定义为自动字段,以便在每次添加新实体时自动递增。否则,保存新行时会出现各种错误。(更好的是,根本不定义PK,让Django自动添加它。)
第二,正如拉洛所说,从行动到法案,从投票到行动,从投票到立法者,你们都应该有外国人。这样,您就可以通过一个查询获得相关信息,并按照模板中的要求遵循外键。你知道吗
(而且,Django已经在基础表名中包含了app名称:不需要在所有内容前面加上“gadb”。)
查看:
模板:
相关问题 更多 >
编程相关推荐