加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 验证django.contrib.comments表单时如何访问请求对象

发布时间:2020-12-20 13:21:17 所属栏目:Python 来源:网络整理
导读:当用户使用 django评论发帖时,我想对IP地址进行检查. 我可以轻松地覆盖和自定义django.comments使用的表单,但我需要访问请求对象以向其clean()添加IP测试.是否有可能以干净的方式访问它? 另一种方法是在接收保存信号时检查IP,但是中止保存的唯一方法似乎是
当用户使用 django评论发帖时,我想对IP地址进行检查.

我可以轻松地覆盖和自定义django.comments使用的表单,但我需要访问请求对象以向其clean()添加IP测试.是否有可能以干净的方式访问它?

另一种方法是在接收保存信号时检查IP,但是中止保存的唯一方法似乎是向用户返回代码400.

解决方法

评论框架提供了comment_will_be_posted信号:
http://docs.djangoproject.com/en/1.2/ref/contrib/comments/signals/#comment-will-be-posted

如果您注册此信号,您??的处理程序将传递(尚未保存)注释对象和请求作为参数.如果您的处理程序返回False,则post_comment视图将使用CommentPostBadRequest进行回答,因为它会对失败的表单验证等任何其他类型的错误进行回答.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读