Освоить удаление данных из БД методом POST - Python
Формулировка задачи:
Добрый день!
Пытаюсь освоить удаление данных из бд методом POST ( Знаю, что в django есть такая вещь как Form, но хочу попробовать сперва сделать это сам)
Вот содержание:
Собственно при загрузке страницы получаю следуюшию ошибку:
views.py
Листинг программы
- from django.shortcuts import render
- from django.http import HttpResponseRedirect, HttpResponse
- from .models import News
- from django.core.urlresolvers import reverse
- # Create your views here.
- def news(request):
- listNews = News.objects.all()
- context = {'listNews': listNews}
- return render(request, 'news/index.html', context)
- def delete(request):
- delNews = request.POST['news']
- d = News.objects.filter(id=delNews).delete()
- return reverse('news:delete', kwargs={'news.id'})
urls.py
Листинг программы
- from django.conf.urls import url
- from . import views
- app_name='news'
- urlpatterns = [
- url(r'^$', views.news, name='news'),
- url(r'^delete/$', views.delete, name='delete'),
- ]
index.html
Листинг программы
- {% if listNews %}
- <form action="{% url 'news:delete' news.id %}" method="post">
- {% for news in listNews %}
- {% csrf_token %}
- <h4>{{news.title}}</h4>
- {{news.text}}
- {{news.author}}
- {{news.date}}
- <input type="text" name="news" id="news{{ forloop.counter }}" value="{{ news.id }}" />
- <input type="submit" />
- {% endfor %}
- </form>
- <p>No news avaliable</p>
- {% endif %}
Reverse for 'delete' with arguments '('',)' and keyword arguments '{}' not found. 1 pattern(s) tried: ['$delete/$']
Помогите исправить и сказать, где я ошибку допустил.Решение задачи: «Освоить удаление данных из БД методом POST»
textual
Листинг программы
- return HttpResponseRedirect(reverse('settest:question',
- kwargs={'test_id':test_id,}))
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д