1

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

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

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

结果我得到了错误:

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

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

4

1 回答 1

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>

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

于 2015-06-30T19:03:30.623 回答