django - 在表单字段验证中获取请求

标签 django forms validation request field

我有一个表单,其中验证取决于登录的用户。对于某些用户,某些值是有效的,而对于其他用户,它们是无效的。什么有效,什么无效是动态的 - 我无法为每个用户组创建新表单。

更重要的是,我需要在更多表单中进行相同的验证,因此我创建了自定义表单字段。对于这个自定义表单字段,我需要以某种方式传递用户实例以检查该值是否有效。

这该怎么做?

最佳答案

我是这样做的:

class EventForm(forms.ModelForm):
  def __init__(self, *args, **kwargs):
    user = kwargs.pop('user', None)
    # doing stuff with the user…
    super(EventForm, self).__init__(*args, **kwargs)

在您的 View 类/方法中,您必须像这样实例化表单:
form = EventForm(user=request.user, data=request.POST)

关于django - 在表单字段验证中获取请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17830470/

相关文章:

java - 检查输入的号码

python - 更改默认的 auth_user 表名

django-通知-hq : cannot show notifications

python - 在 Django 中解压缩 Zip 文件

ruby-on-rails - Rails 金钱 gem 和表单生成器

php - 使用 php/html 表单插入 mysql - 不起作用

validation - 是的 vs Joi 进行前端验证

python - 如何修复: Django error: no such table: main.classroom_student__old

用于序列化表单并恢复/填充表单的 jQuery 插件?

JavaScript 验证函数