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. linux - 【已解决】fabric部署的Python项目Apache启动之后提示403Forbidden该如何解决?2. python - (初学者)代码运行不起来,求指导,谢谢!3. mysql里的大表用mycat做水平拆分,是不是要先手动分好,再配置mycat4. window下mysql中文乱码怎么解决??5. python - flask sqlalchemy signals 无法触发6. nginx - pip install python库报错7. python - 获取到的数据生成新的mysql表8. python的文件读写问题?9. javascript - js 对中文进行MD5加密和python结果不一样。10. 为什么python中实例检查推荐使用isinstance而不是type?
