Как мне редактировать и удалять данные в Django? - PullRequest
7 голосов
/ 22 ноября 2008

Я использую django 1.0, и я создал свои модели, используя пример из книги Django. Я могу выполнять основную функцию добавления данных; теперь мне нужен способ извлечь эти данные, загрузить их в форму (change_form ?! или что-то в этом роде), EDIT и сохранить их обратно в БД Во-вторых, как мне УДАЛИТЬ данные, которые находятся в БД? поиск, выбор, а затем удаление!

Пожалуйста, покажите мне пример кода, который мне нужно написать на моих view.py и urls.py для выполнения этой задачи.

Ответы [ 2 ]

25 голосов
/ 22 ноября 2008

Скажем, у вас есть модель Сотрудник. Чтобы отредактировать запись с первичным ключом 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'),

Предлагаю вам взглянуть на документы

0 голосов
/ 22 ноября 2008

Прочитайте следующее: Сайт администратора Django . Затем уточните свой вопрос с конкретными деталями.

...