我的意见.py:
@login_required
def some_views(request):
if request.method == 'POST':
form = AddressCreateFrom(request.POST)
if form.is_valid():
name = form.cleaned_data['Address']
ip_value = form.cleaned_data['value']
user_list = get_username(name)
address_create = form.save()
extra_context = {
'user_list': user_list
}
return redirect_to(request, url=address_create.get_absolute_url())
else:
form = AddressCreateFrom()
extra_context = {
'form':AddressCreateFrom(initial={'user': request.user.pk})
}
return direct_to_template(request,'networks/user_form.html',extra_context)
在 form.py 中:
class AddressCreateFrom(forms.ModelForm):
Address = forms.CharField(max_length=40)
value = forms.CharField(max_length=40)
class Meta:
model = Network
widgets = {
'user': forms.HiddenInput()
}
如您所见,我正在使用带有两个额外 Django 表单字段的 Django 模型表单,即Address and value
在AddressCreateForm
课堂上。在渲染模板时我需要所有字段。
确实some_views
方法工作正常,但我还想将一些用context_dictionary
ie写入的额外数据呈现user_list
给请求的URL
ie address_create.get_absolute_url()
。
如果我没记错的话,如果我们正在处理数据库,我们必须使用redirect_to
方法。有可能这样做吗?