Python 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='

我试图使用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='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>