12

我正在使用 django 1.0,并且使用 Django 书中的示例创建了我的模型。我能够执行添加数据的基本功能;现在我需要一种检索该数据的方法,将其加载到表单中(change_form?!或其他东西),对其进行编辑并将其保存回数据库。其次,我如何删除数据库中的数据?即搜索,选择然后删除!

请给我看一个我需要编写的代码示例view.pyurls.py执行此任务。

4

3 回答 3

35

假设您有一个模范员工。要使用主键 emp_id 编辑条目,请执行以下操作:

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

删除它只是做:

emp.delete()

所以一个完整的观点是:

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

在 urls.py 你需要两个这样的条目:

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

我建议你看看文档

于 2008-11-22T10:36:04.280 回答
2

要执行其中任何一项,您需要使用称为查询的东西。

检查下面的链接以获得非常好的文档!(https://docs.djangoproject.com/en/2.2/topics/db/queries/

删除数据:

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

这将删除 ID 为 1 的模型对象

要编辑数据:

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

这会将 ID 为 1 的模型对象的名称更改为 Henry

于 2019-07-29T22:01:30.627 回答
-9

阅读以下内容:Django 管理站点。然后用具体细节修改你的问题。

于 2008-11-22T13:32:44.657 回答