Python Django UpdateView不工作
我试图使用django的UpdateView,但由于某些原因,它不起作用Python Django UpdateView不工作,python,django,Python,Django,我试图使用django的UpdateView,但由于某些原因,它不起作用 (URL.py) from django.conf.urls import url from . import views app_name='profiles' urlpatterns = [ url(r'^$', views.IndexView.as_view(),name='index'), url(r'^(?P<pk>[0-9]+)$',views.DetailView.as_view(),name='
(URL.py)
from django.conf.urls import url
from . import views
app_name='profiles'
urlpatterns = [
url(r'^$', views.IndexView.as_view(),name='index'),
url(r'^(?P<pk>[0-9]+)$',views.DetailView.as_view(),name='detail'),
url(r'^task/add/$',views.TaskCreate.as_view(),name='task-add'),
url(r'^task/(?P<pk>[0-9]+)$',views.TaskUpdate.as_view(), name='task-update'),
url(r'^task/(?P<pk>[0-9]+)/delete/$',views.TaskDelete.as_view(), name='task-delete'),]
当我运行它并转到页面时,它显示错误“无反向匹配”您忘记传递url参数
pk
尝试以下操作:
<a href="{% url 'profiles:task-update' pk=datamain.id %}">Edit</a>
浏览器中的url是什么?@Evansurithi“,现在最疯狂的事情是,如果我使用“”,它可以工作并进入编辑页面,但我必须手动在url中添加“任务”,这就是为什么我使用链接来做同样的事。这是因为,/home/task/2
匹配url模式url(r'^task/(?P[0-9]+)$),views.TaskUpdate.as\u view(),name='task-update'),
/home/2
将匹配url(r'^(?P[0-9]+)$”,views.DetailView.as_view(),name='detail'),
@evansumrithi,谢谢你的输入,我想出来了,但我的问题是,当我使用标记将它放在链接中时,为什么不起同样的作用
class IndexView(generic.ListView):
template_name = 'profiles/index.html'
def get_queryset(self):
return Datamain.objects.all()
class DetailView(generic.DetailView):
model = Datamain
template_name = 'profiles/details.html'
class TaskCreate(CreateView):
model=Datamain
fields=['main_task','date_time','efforts','status']
class TaskUpdate(UpdateView):
model=Datamain
fields=['main_task','date_time','efforts','status']
class TaskDelete(DeleteView):
model=Datamain
success_url = reverse_lazy('profiles:index')
fields=['main_task','date_time','efforts','status']
<a href="{% url 'profiles:task-update' pk=datamain.id %}">Edit</a>