我的github文件位于此处https://github.com/cbaldwin20/project_9/blob/master/menu/tests.py
我不能让这个测试通过(注意'Menu'的数据库中已经有一个对象,所以我试图添加另一个对象使其成为2。谢谢你的建议。在
def test_create_new_menu_view(self):
self.client.post('/menu/new', data={
'expiration_date': timezone.now() + timezone.timedelta(days=2),
'season': 'Spring 2018',
'created_date': timezone.now(),
'items': ['1']
})
self.assertEqual(Menu.objects.count(), 2)
在这个观点上
^{pr2}$使用此表单
class MenuForm(forms.ModelForm):
expiration_date = forms.DateField(widget=forms.SelectDateWidget())
items = forms.ModelMultipleChoiceField(queryset=Item.objects.all(), required=False, widget=forms.CheckboxSelectMultiple)
class Meta:
model = Menu
exclude = ('created_date',)
以及表单使用的这个模型
class Menu(models.Model):
season = models.CharField(max_length=20)
items = models.ManyToManyField('Item', related_name='items')
created_date = models.DateTimeField(
default=timezone.now)
expiration_date = models.DateTimeField(
blank=True, null=True)
测试方法中通过httppost提交的表单数据将使表单无效。您需要以类似格式(即YYYY-MM-DD)发送日期,因为如果在浏览器中提交表单,则会传递日期。在
相关问题 更多 >
编程相关推荐