是否可以从用于创建窗体类的queryset中访问值。例如,我有以下观点:
class MyView(View):
position = Position()
form_class = PortfolioForm
PositionModelFormSet = modelformset_factory(Position,
fields=('symbol', 'direction', 'size'),
form=form_class)
def get(self, request):
positions = self.position.get_user_positions_qs(user=request.user)
portfolio = self.PositionModelFormSet(queryset=positions)
我需要的是在创建表单时能够访问传递给PortfolioForm的值。换句话说,对于formset中的每个表单,都有一个queryset,在实例化它时使用它。我需要在设置窗体时访问该查询集中的值。例如,PortfolioForm类似于:
class PortfolioForm(forms.ModelForm):
value = get_value_from_queryset # eg: access symbol field
do_something_with_value(value)
class Meta:
model = Position
fields = ['symbol', 'direction', 'size']
我想通过重写form __init__
方法并使用self.instance
或kwargs
来访问它,但到目前为止我还没有任何运气
对于ModelForm,form.instance已经可以工作了
形式:self.instance
在视图中:formset.form.instance
相关问题 更多 >
编程相关推荐