1

我已经到了Django 教程第一页的末尾。我尝试了一个快速实验,但由于它没有奏效,我很困惑。按照教程,我有一个变量p

p = Poll.objects.get(pk=1)

p.choice_set.create(choice='Not much', votes=0)我没有按照教程的说明创建投票,而是尝试了:

x = Choice(choice='Not much', votes=0, poll=p)

完成此操作后,我会认为p.choice_set.all()返回的不仅仅是一个空列表。但它确实返回一个空列表。

(但是,如果我尝试,x.poll那么我<Poll: What's up?>会得到预期的结果,所以这种关系似乎只是一种方式。)

我敢肯定这不起作用是有充分理由的,即使它看起来应该起作用!(请记住我没有数据库经验)

欢迎任何想法

4

1 回答 1

3

x = Choice(choice='Not much', votes=0, poll=p)创建Choice模型的实例,但尚未保存到数据库中。p.choice_set.all()在数据库中查询与给定投票相关的选项。由于x未保存到数据库中,因此将找不到。

于 2012-06-29T15:21:03.000 回答