I have views.py like this
比如何创建编辑测试和更新测试?? i想要编辑和更新可以通过ID
来完成 从 django.快捷方式导入渲染,重定向 从 .模型 导入 人物
def index(request):
peoples = People.objects.all()
context = {'peoples': peoples}
return render(request, 'people_app/index.html', context)
def create(request):
print(request.POST)
people_app = People(name=request.POST['name'], biography=request.POST['biography'])
people_app.save()
return redirect('/')
def edit(request, id):
people = People.objects.get(id=id)
context = {'people': people}
return render(request, 'people_app/edit.html', context)
def update(request, id):
people = People.objects.get(id=id)
people.name = request.POST['name']
people.biography = request.POST['biography']
people.save()
return redirect('/')
def destroy(request, id):
people = People.objects.get(id=id)
people.delete()
return redirect('/')
在 POST 请求中执行的编辑或更新操作。由于您有基于定义的视图,因此您必须检查请求的类型并采取相应的行动。
def edit(request, id):
people = People.objects.get(id=id)
if request.method == 'POST':
people.<field_to_update> = request.POST.get('<field_value>')
people.save()
context = {'people': people}
return render(request, 'people_app/edit.html', context)