現在のアイテムから日付フィールドを取得しようとしています。私は構文の権利を得ることができません。私はちょうど私が提出したフォームから日付データを取得することについてどのように行くだろうか?私は、下のコードを試すたびに、私は次のエラーを取得する:あなたの助けを事前に自己オブジェクトから日付を取得
'NoneType' object has no attribute 'get'
views.py
class EntryCreate(CreateView):
form_class = EntryForm
template_name = 'argent/entry_form.html'
def form_valid(self, form):
e_item = self.object.get()
e_date = e_item.get('date')
e_month = e_date.strftime('%B')
e_year = e_date.year
qs = MonthYear.objects.filter(month=e_month, year=e_year)
models.py
class Entry(models.Model):
date = models.DateField(blank=True, null=True,)
euros = models.CharField(max_length=500, blank=True, null=True)
comments = models.CharField(max_length=900, blank=True, null=True)
感謝。
'get()'を使わずにモデル値にアクセスしようとしましたか?代わりに 'e_item = self.object'とそれに続く' e_date = e_item.date'のようなものはありますか?私は 'get()'メソッドは辞書に使われ、Javaのゲッターと同じ意味を持ちません。 –
アイテムが投稿され、dbに保存されますが、それでもエラーが発生します: ''NoneType'オブジェクトは呼び出し不可能です。何らかの理由で、私はちょうど提出したオブジェクトからデータを引き出すことができません。例えば、 'e_item.date'を印刷すると、' None'となります。 – grigs
申し訳ありません、元の質問に答えるために、はい、私は 'get()'を使わずに試しました。それは 'NoneType 'オブジェクトが呼び出し可能ではない'エラーを取得するときです。私は提出されたアイテムからデータを引き出すことはできません。 – grigs