如何创建Django编辑测试和更新测试

2024-06-02 19:10:49 发布

您现在位置:Python中文网/ 问答频道 /正文

I have views.py like this

而不是如何创建编辑测试和更新测试??我 想要编辑和更新可以通过id来完成
从django.com快捷方式导入渲染,重定向 从模型导入人

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('/')

Tags: nameidappgetreturnobjectsrequestdef
1条回答
网友
1楼 · 发布于 2024-06-02 19:10:49

在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)

相关问题 更多 >