Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 摇尾路线仍然返回404_Python_Django_Wagtail - Fatal编程技术网

Python 摇尾路线仍然返回404

Python 摇尾路线仍然返回404,python,django,wagtail,Python,Django,Wagtail,我遇到了一个有点奇怪的问题,不知道为什么会这样 这是我的模型: class PostIndexPage(RoutablePage): max_count = 1 parent_page_types = [] intro = RichTextField(blank=True) content_panels = Page.content_panels + [ FieldPanel('intro', classname="full") ]

我遇到了一个有点奇怪的问题,不知道为什么会这样

这是我的模型:

class PostIndexPage(RoutablePage):
    max_count = 1
    parent_page_types = []
    intro = RichTextField(blank=True)

    content_panels = Page.content_panels + [
        FieldPanel('intro', classname="full")
    ]

    @route(r'^posts/$')
    def main(self, request):
        from django.shortcuts import render
        return render(request, self.get_template(request), self.get_context(request))
我在那个模型中定义了路线,但似乎并没有效果。 -旧的url仍然以旧的方式工作 -但是这个没有(404,未找到)


你知道我做错了什么吗?

可路由页面上由
@route
定义的URL路由是相对于页面的正常路径的,这取决于其slug和在页面树中的位置。如果您使用slug
post index page
创建了一个可路由页面,那么
posts
路由将位于
/post index page/posts/


如果希望视图保持完全固定的URL,则始终可以将其定义为标准Django视图。

>如果希望视图保持完全固定的URL,则始终可以将其定义为标准Django视图。如何在固定的URL上设置摇尾页面?我看到的选项是a)在它上面创建页面,并设置所有的段塞以生成所需的路径b)创建第二个wagtail根,它认为这是一个不同的站点,听起来不像是intended@jbothma您可以在固定的URL上设置Django视图,该视图检索您选择的页面并返回调用
.service(请求)的结果
在上面。但是,如果您像本例中那样与RoutablePageMixin结合使用,那么基本上就没有摇摆尾巴了——您只是在编写普通的Django(最多使用
FooPage.objects.get(slug='something')
行,这样您就可以从页面中提取数据)。