python - Django表單Form.save()問題
問題描述
def commentCreate(request, articleId): #POST’’’the problem is comment no relate mapping to one id of Artilce 單純的將CommentForm().save 是無法實現留言的,因為 創建一個留言需要對應一個文章,即要對應其文章所屬id;’’’content = request.POST.get(’comment’)CommentForm.content = contentcomment = CommentForm() #print (’表單綁定確認:’,comment.is_bound)’’’if not comment.is_valid(): return render(request, template,{’article’:articleId})’’’comment.save()messages.success(request,’留言已新增’)return redirect(’article:articleRead’,articleId=articleId)Console錯誤:django.db.utils.IntegrityError: 錯誤: 在字段 'article_id' 中空值違反了非空約束DETAIL: 失敗, 行包含(879, , null, 2017-05-22 11:05:06.862614+00, null).網頁錯誤: comment.save() ...▼ Local varsVariable ValuearticleId ’336’comment <CommentForm bound=False, valid=False, fields=(content)>content ’你好’request <WSGIRequest: POST ’/article/commentCreate/336/’>
如何將文章對應的articleId 的值放進CommentForm()?
問題解答
回答1:根據articleId獲取到Article: obj = Article.objects.get(id=articleId)然后 comment.article = obj # 具體看你在models里定義的article字段名
回答2:嗯,謝謝你,這個問題我在http://zmrenwu.com/post/14/ 里面已經找到解決方法了。不過這個論壇怎么把提問刪掉。
相關文章:
1. angular.js - $stateChangeSuccess事件在狀態跳轉的時候不執行?2. 如何解決docker宿主機無法訪問容器中的服務?3. python - Scrapy存在內存泄漏的問題。4. java - 三位二進制表示8進制,四位二進制表示16進制,那么多少二進制表示10進制呢?5. 如何用筆記本上的apache做微信開發的服務器6. javascript - 螞蟻金服里的react Modal方法,是怎么把元素插入到頁面最后的7. CSS3 畫如下圖形8. android - rxjava merge 返回Object對象數據如何緩存9. java如何生成token?10. angular.js - ionic2 瀏覽器跨域問題
