Django管理添加自定义视图到mod

2024-09-29 22:03:46 发布

您现在位置:Python中文网/ 问答频道 /正文

所以基本上我想要的是为我的一个模型定制一个视图(打印视图)。 我添加了一个自定义按钮,并更改了模型的get_url():

def get_urls(self):
    urls = super(MyModelAdmin, self).get_urls()
    my_urls = patterns('',
        url(r'^/print/schedule$', 
self.admin_site.admin_view(views.PrintScheduleDetailView.as_view()), name='print_schedule'),
    )
    return my_urls + urls

当我试着看的时候: 我的应用程序/我的型号/主密钥/打印/时间表/ 它告诉我pk 1/print/schedule的对象不存在。。。。在

我能做什么?在

谢谢, 阿拉

编辑:这是我的视图类:

^{pr2}$

我找到了工作的链接。。。在

本地主机/锦标赛/打印/日程安排/

但它告诉通用详细视图PrintScheduleDetailView必须使用对象pk或slug调用。。。。我尝试添加一个主键localhost/tournament/print/schedule/pk,但没有成功。。。 谢谢, 阿拉


Tags: 对象模型selfview视图urlgetadmin
2条回答

根据类视图的Detailview:

By default this requires self.queryset and a pk or slug argument in the URLconf, but subclasses can override this to return any object.

url(r'^/(?P<pk>[\d]+)/print/schedule/$', self.admin_site.admin_view(views.PrintScheduleDetailView.as_view()), name='print_schedule'),)

我相信你需要通过pk,除非你是通过另一种方式获取它(你还没有粘贴你的类视图)。在

也许应该更改正则表达式以删除“^”符号,例如:

url(r'/print/schedule$'

相关问题 更多 >

    热门问题