我正在使用django来保存数据库。在我的视图功能中,我使用了:
form = RecipeForm(instance=Recipe)
其中Recipe是我的模型的名称。
当我转到网址时,我收到以下错误:
__init__() got an unexpected keyword argument 'instance'
我四处搜寻,发现'实例'专门用于模型表格。 form.Form还有其他选择吗?如果是这样,有人能指出我正确的方向吗?
修改
这是我在views.py中的完整功能
def recipe_edit(request, pk):
recipe = get_object_or_404(Recipe, pk=pk)
if request.method == "POST":
form = RecipeForm(request.POST, instance=Recipe)
if form.is_valid():
recipe = form.save(commit=False)
recipe.user = request.user
recipe.save()
return redirect('recipe_detail', pk=recipe.pk)
else:
form = RecipeForm(instance=Recipe)
return render(request, 'recipe_edit.html', {'form': form})
这是我在forms.py中的表单
class RecipeForm(forms.Form):
title= forms.CharField(max_length=500)
description = forms.CharField(max_length=500)
答案 0 :(得分:0)
您可以在实例化表单时传递initial
字典。
initial = {'title': recipe.title, 'description': recipe.description}
form = RecipeForm(initial=initial)