【问题标题】:Not able to add view and path to a package无法将视图和路径添加到包
【发布时间】:2020-04-01 18:56:00
【问题描述】:

所以我尝试了几天在包“django-todo”

上制作自己的函数

我可以在视图中添加我的,但是当我尝试添加到路径时它不起作用。

我已经在我的设置中注册了该应用,我将网址添加到了我的主文件夹中:path('', include('todo.urls', namespace="apptodo")),

Views.PY

 @login_required
def add_list(request) -> HttpResponse:
    """Allow users to add a new todo list to the group they're in.
    """


    if request.POST:
        form = AddTaskListForm(request.user, request.POST)
        if form.is_valid():
            try:
                newlist = form.save(commit=False)
                newlist.slug = slugify(newlist.name, allow_unicode=True)
                newlist.save()
                messages.success(request, "Une nouvelle catégorie a été ajoutée.")
                return redirect("todo:lists")

**And mine** 

    @login_required
def dailyadd_list(request) -> HttpResponse:
    """Allow users to add a new todo list to the group they're in.
    """


    if request.POST:
        form = AddTaskListForm(request.user, request.POST)
        if form.is_valid():
            try:
                newlist = form.save(commit=False)
                newlist.slug = slugify(newlist.name, allow_unicode=True)
                newlist.save()
                messages.success(request, "Une nouvelle catégorie a été ajoutée.")
                return redirect("todo:lists")

现在在我的 urls.py

这个是随包一起来的

path("add_list/", views.add_list, name="add_list"),

我的

path("dailyadd_list/", views.dailyadd_list, name="add_list"),

很奇怪,好像有设置不允许额外的路径...

有什么想法吗?

【问题讨论】:

  • 不清楚是什么问题。
  • 如果我将我的函数添加到 url 路径,它会显示“AttributeError: module 'todo.views' has no attribute 'dailyadd_list'”即使它存在

标签: python django django-views django-urls django-apps


【解决方案1】:

在您的 urls.py 中,而不是:

path("dailyadd_list/", views.add_list, name="add_list")

应该是:

path("dailyadd_list/", views.dailyadd_list, name="add_list")

【讨论】:

  • 对不起,我犯了一个错误。我实际上写的是正确的方法。它只是不想找到我的观点。
  • 查看包,您的 add_list 视图位于视图模块内的 add_list.py 中。所以可能你需要将你的函数导入views.py,比如add_list。例如: from todo.views.add_list import add_list from todo.views.add_list import dailyadd_list
猜你喜欢
  • 1970-01-01
  • 2018-03-16
  • 2019-02-08
  • 1970-01-01
  • 2021-02-26
  • 1970-01-01
  • 1970-01-01
  • 2023-03-23
  • 2011-09-09
相关资源
最近更新 更多