【问题标题】:django admin custom model admin urldjango admin 自定义模型 admin url
【发布时间】:2015-09-17 16:51:21
【问题描述】:

所以我的 django 应用程序中有一个 Bookings 模型。我正在使用 django admin 来显示有关预订的信息。我想直接从changelist 视图创建一个自定义网址——(不是change 视图)。

我希望网址类似于:/admin/bookings/generate_bookings

我已经通过覆盖get_urls 函数在我的模型管理员中注册了该网址。问题是 django 会自动将遵循 model_name/<text> 语法的任何 url 解析为详细视图 url,并假定 text 中的任何内容都是给定模型的主键。

结果我得到了错误:

booking object with primary key u'random_text' does not exist.

有什么方法可以让我的自定义网址先解析?

【问题讨论】:

    标签: python django django-admin django-modeladmin


    【解决方案1】:

    如果你这样做:

    def get_urls(self):
        urls = super(BookingAdmin, self).get_urls()
        my_urls = patterns('',
            (r'^generate_bookings/$', self.your_custom_function)
        )
        return my_urls + urls
    

    在某处的更改列表模板中:

    <a href="generate_bookings/">Generate Booking</a>
    

    它应该工作。至少它总是对我有用

    【讨论】:

    • 它在change 视图上运行良好。不在changelist 视图中
    猜你喜欢
    • 2018-10-11
    • 2012-03-05
    • 1970-01-01
    • 2012-03-15
    • 1970-01-01
    • 2015-05-18
    • 2020-09-14
    • 1970-01-01
    • 2017-12-23
    相关资源
    最近更新 更多