0

私はhttps://docs.djangoproject.com/en/1.4/intro/tutorial01/に取り組んでいます。

チュートリアルの最後には、django DB API に関するセクションがあり、次のセクションがあります。

# Display any choices from the related object set -- none so far.
>>> p.choice_set.all()
[]

# Create three choices.
>>> p.choice_set.create(choice_text='Not much', votes=0)
<Choice: Not much>

ただし、チュートリアルから直接コピーすると: >>> p.choice_set.create(choice_text='Not much', votes=0) 、取得:

raise TypeError("'%s' is an invalid keyword argument for this function" % kw
args.keys()[0])
TypeError: 'choice_text' is an invalid keyword argument for this function

以前は、tut のすべてが期待どおりに機能していました。

問題は何ですか?私は、OOPの経験を持つPHPのバックグラウンドから来たPythonにはかなり慣れていません。

前もって感謝します、

明細書

4

1 に答える 1

5

チュートリアルから直接コピーしてよろしいですか。choice=代わりにあるようですchoice_text=

# Create three choices.
>>> p.choice_set.create(choice='Not much', votes=0)
<Choice: Not much>
>>> p.choice_set.create(choice='The sky', votes=0)
<Choice: The sky>

モデルは次のとおりです。

class Choice(models.Model):
    poll = models.ForeignKey(Poll)
    choice = models.CharField(max_length=200)
    votes = models.IntegerField()

したがって、この行はchoice_set.create()(ドキュメントへのリンク) を使用して、モデルを作成しChoice、ポーリングを行い、pそれをモデル フィールドpoll(外部キー) として割り当てています。次に、モデル フィールドに値を割り当て、モデルchoice=フィールドに値を割り当てます。choicevotes=votes

于 2013-02-06T19:35:46.780 に答える