我使用的是Django 1.0,我使用Django書中的示例創建了我的模型。我能夠執行添加數據的基本功能;現在我需要一種檢索數據的方法,將其加載到表單中(change_form ?!或其他),編輯並將其保存回數據庫。其次我如何DELETE數據庫中的數據?即搜索,選擇然後刪除!如何編輯和刪除Django中的數據?
請給我一個例子,我需要在我的view.py
和urls.py
上編寫代碼來執行此任務。
我使用的是Django 1.0,我使用Django書中的示例創建了我的模型。我能夠執行添加數據的基本功能;現在我需要一種檢索數據的方法,將其加載到表單中(change_form ?!或其他),編輯並將其保存回數據庫。其次我如何DELETE數據庫中的數據?即搜索,選擇然後刪除!如何編輯和刪除Django中的數據?
請給我一個例子,我需要在我的view.py
和urls.py
上編寫代碼來執行此任務。
假設你有一個模型員工。要編輯與主鍵條目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'),
我建議你看看docs
閱讀以下內容:The Django admin site。然後用特定的細節修改你的問題。
這個主題與管理員網站沒有任何關係。他正在請求模型實例方法(刪除)。 – israkir 2010-02-16 17:01:45
對於那些在這一點上出現這個問題的人:不要直接去request.POST.get,你一定要使用`is_valid()`。 [查看django關於驗證的文檔](https://docs.djangoproject.com/en/1.8/ref/forms/validation/)...這是相當廣泛和非常好的設計。 – eykanal 2015-04-24 16:53:29