我正在尝试从当前项目中提取日期字段。我似乎无法得到正确的语法。我怎样才能从我刚刚提交的表单中获取日期数据?每当我尝试下面的代码,我得到以下错误:从自我对象获取日期
'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中的getter相同的含义。 –
该项目发布并保存在数据库中,但它仍然存在错误:''NoneType'对象不可调用。出于某种原因,我无法从刚刚提交的对象中提取数据。例如,当我打印'e_item.date'时,我得到'None'。 – grigs
对不起,要回答你的原始问题,是的,我已经尝试不使用'get()'。那是当我得到NoneType对象不可调用的错误。我似乎无法从提交的项目中提取任何数据。 – grigs