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. [python2]local variable referenced before assignment问题2. 求救一下,用新版的phpstudy,数据库过段时间会消失是什么情况?3. mysql - 如何在有自增id的情况下,让其他某些字段能不重复插入4. python小白,关于函数问题5. django - Python error: [Errno 99] Cannot assign requested address6. angular.js - 百度支持_escaped_fragment_吗?7. java - 线上应用,如果数据库操作失败的话应该如何处理?8. node.js - win 下 npm install 遇到了如下错误 会导致 无法 run dev么?9. python小白 关于类里面的方法获取变量失败的问题10. Python2中code.co_kwonlyargcount的等效写法
