2015-08-14 43 views
0

我是新的Django用戶。當我在Django中運行程序時,我得到了這個錯誤,請幫忙。Django問題模板不存在/ deals/

Template Does Not Exist at /deals/ 

{'form': <DealsForm bound=False, valid=Unknown, fields=(name;pages;email)>} 

view.py

class DealsForm(ModelForm): 
class Meta: 
    model = Book 
    fields = ['name','pages','email'] 

def deals(request): 
    products = Product.objects.all() 
    form = DealsForm() 

    context = {'products': products} 
    if request.method == "POST": 
     form = DealsForm(request.POST, request.FILES) 
     if form.is_valid(): 
      form.save() 
      return redirect('products/deals') 
    else: 
     form = DealsForm() 
     return render('products/deals.html',{'form': form}, context_instance=context) 
+0

嘗試將最後一行更改爲'return render(request,'products/deals.html',context)'並將表單變量添加到您的上下文字典 –

+0

嗨!感謝您的回覆。它的工作。錯誤已解決,但在這裏我在deals.html中有一個不顯示的表單。 –

+0

這裏它的代碼<形式行動= 「/交易/」 方法= 「POST」 ENCTYPE = 「多部分/格式數據」> {%csrf_token%} {{form.as_p}} –

回答

1

你的錯誤是在參數給render功能,它等待的參數,如

render(request, 'name_of_template.html', context_dict)

另外,檢查你form變量必須在裏面的context字典,請在將其傳遞給渲染之前嘗試添加它:

context['form'] = form

這些事情應該現在就行。

+0

非常感謝瓊,你的解決方案工作 –