如何将参数从视图传递到formset Django
我想将参数从views.py传递到forms.py Django中的formset? 我的设置:Django 2.0.7,Python 3.6.5如何将参数从视图传递到formset Django,django,django-forms,django-views,Django,Django Forms,Django Views,我想将参数从views.py传递到forms.py Django中的formset? 我的设置:Django 2.0.7,Python 3.6.5 谢谢你帮助我 您可以通过在基于类的视图中重写get\u form\u kwargs方法来实现。是文档中的一个小说明,您可以找到源代码 get\u form\u kwargs所做的是将关键字参数字典传递给表单中的\uuu init\uuu。因此,您必须在两个位置更改代码-views.py和forms.py 例如: 视图.py class CreateP
谢谢你帮助我 您可以通过在基于类的视图中重写
get\u form\u kwargs
方法来实现。是文档中的一个小说明,您可以找到源代码
get\u form\u kwargs
所做的是将关键字参数字典传递给表单中的\uuu init\uuu
。因此,您必须在两个位置更改代码-views.py和forms.py
例如:
视图.py
class CreatePost(generic.CreateView):
# SOMETHING HERE
def get_from_kwargs(self):
kwargs = super().get_form_kwargs()
kwargs.update({"user", self.request.user})
return kwargs
class PostForm(forms.ModelForm):
# SOMETHING HERE
def __init__(self, *args, **kwargs):
user = kwargs.pop("user", None)
super().__init__(*args, **kwargs)
if user is not None:
self.fields["group"].queryset = models.Group.object.filter(members = user)
forms.py
class CreatePost(generic.CreateView):
# SOMETHING HERE
def get_from_kwargs(self):
kwargs = super().get_form_kwargs()
kwargs.update({"user", self.request.user})
return kwargs
class PostForm(forms.ModelForm):
# SOMETHING HERE
def __init__(self, *args, **kwargs):
user = kwargs.pop("user", None)
super().__init__(*args, **kwargs)
if user is not None:
self.fields["group"].queryset = models.Group.object.filter(members = user)
我在上面的代码中所做的是将用户从视图传递到表单,然后获取用户所属组的查询集(在组模型中,有members ManyToManyField)
有人还举了另一个例子