2016-12-28 104 views
0

我遇到了問題,我需要的是將零件號保存到數據庫表中。所以每次用戶進入SOSS時都應該保存在我的表格中。這是我的代碼,但沒有保存任何東西,不知道我做錯了什麼。Django將數據保存到數據庫中

manifiestos.html

          <form action="{% url 'manifiestos' %}" method="post"> {% csrf_token %} 
               <p><label for="date"> Date:</label> <input type="text" name="date" value={% now "Y-m-d" %} /> </p> 
               <p><label for="soss"> SOSS:</label> <input type="text" name="soss" id="soss" /> </p> 
               <input type="submit" value="Submit" /> 
             </form> 

models.py

class manifiestos_bts(models.Model): 
    soss = models.CharField(max_length=50) 
    date = models.DateTimeField(null=True, blank=True) 
    user = models.CharField(max_length=50) 

forms.py

class ManifiestosForm(forms.Form): 
    soss = forms.CharField() 
    date = forms.DateTimeField() 
    user = forms.CharField() 

個html_views

@login_required(login_url='/msr/login') 
def manifiestos(request): 
    if request.method == 'POST': 

     form = ManifiestosForm(request.POST) 
     if form.is_valid(): 
      soss = request.POST.get('soss', '') 
      date = request.POST.get('date', '') 
      manifiestos_obj = manifiestos_bts(soss= soss, date= date) 
      manifiestos_obj.save() 

      return HttpResponseRedirect(reverse('manifiestos')) 
    else: 
     form = ManifiestosForm() 

    return render(request, 'manifiestos.html', {'form': form}) 

urls.py

url(r'^manifiestos$', html_views.manifiestos, name='manifiestos'), 

感謝您的時間:) 如果您需要更多的細節只是讓我知道。

+0

中刪除它是什麼結果?你爲'user'傳遞了什麼?當你已經有'form'的時候,你爲什麼使用request.POST ['soss']'? – kia

回答

2

您的form.is_valid()將失敗,因爲您沒有從模板傳遞用戶。將其從ManifiestosForm中移除或將其從manifiestos.html

+0

這就是爲什麼不傳遞數據?我應該刪除用戶或添加它呢?讓我試試 – Deluq

+0

它工作!謝謝 :) – Deluq