擅长:python、mysql、java
<p>您可以通过重写<code>get_urls</code>来更改ModelAdmin的路由:</p>
<pre><code>class gradeScalesSettingAdmin(admin.ModelAdmin):
def get_urls(self):
urls = super().get_urls()
pat = [i for i in urls if str(i.name).endswith('changelist')][0] # Find needed path object to replace
index = urls.index(pat)
urls[index] = path(pat.pattern._route, gradescales)
return urls
</code></pre>
<p>通过这种方式,您可以完全控制用于管理页面的视图,甚至可以根据需要添加其他页面(不仅仅是变更列表和编辑视图)。在</p>
<p>如果不需要其他默认视图(如对象编辑页),则可以通过替换原始URL(而不是搜索所需的URL并进行修补)来简化上面的代码:</p>
^{pr2}$