我的意见.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_dictionaryie写入的额外数据呈现user_list给请求的URLie address_create.get_absolute_url()。
如果我没记错的话,如果我们正在处理数据库,我们必须使用redirect_to方法。有可能这样做吗?