How do I edit and delete data in Django?

后端 未结 3 1847
离开以前
离开以前 2020-12-29 12:00

I am using django 1.0 and I have created my models using the example in the Django book. I am able to perform the basic function of adding data; now I need a way of retriev

相关标签:
3条回答
  • 2020-12-29 12:37

    To do either of these you need to use something called queries.

    check link below for really great documentation on that! (https://docs.djangoproject.com/en/2.2/topics/db/queries/)

    To Delete Data:

    b = ModelName.objects.get(id = 1)
    b.delete()
    

    This will delete the Object of the model w/ an ID of 1

    To edit Data:

    b = ModelName.objects.get(id = 1)
    b.name = 'Henry'
    b.save()
    

    This will change the name of the Object of the model w/ an ID of 1 to be Henry

    0 讨论(0)
  • 2020-12-29 12:45

    Read the following: The Django admin site. Then revise your question with specific details.

    0 讨论(0)
  • 2020-12-29 12:46

    Say you have a model Employee. To edit an entry with primary key emp_id you do:

    emp = Employee.objects.get(pk = emp_id)
    emp.name = 'Somename'
    emp.save()
    

    to delete it just do:

    emp.delete()
    

    so a full view would be:

    def update(request, id):
       emp = Employee.objects.get(pk = id)
       #you can do this for as many fields as you like
       #here I asume you had a form with input like <input type="text" name="name"/>
       #so it's basically like that for all form fields
       emp.name = request.POST.get('name')
       emp.save()
       return HttpResponse('updated')
    
    def delete(request, id):
       emp = Employee.objects.get(pk = id)
       emp.delete()
       return HttpResponse('deleted')
    

    In urls.py you'd need two entries like this:

    (r'^delete/(\d+)/$','myproject.myapp.views.delete'),
    (r'^update/(\d+)/$','myproject.myapp.views.update'),
    

    I suggest you take a look at the docs

    0 讨论(0)
提交回复
热议问题