我正在尝试将两个 URL 添加到模型管理员。
class JobTitleAdmin(admin.ModelAdmin):
inlines = [OccupationTagInline, ]
model = JobTitle
search_fields = ['title',]
list_filter = ['status',]
actions =['add_to_job_category', 'move_to_job_category' ]
def add_to_job_category_view(self, request):
return render_to_response(
'admin/job_title/select_job_category.html',
{
'action': 'add',
'featured_occupations': Occupation.objects.filter(featured=True),
'title_ids': array(request.GET['foo'])
},
context_instance=RequestContext(request)
)
def get_urls(self):
urls = super(JobTitleAdmin, self).get_urls()
custom_urls = patterns('',
url(r'^add_to_job_category/$', self.admin_site.admin_view(self.add_to_job_category_view), name='admin_jobtitle_add_to_cat',),
url(r'^move_to_job_category/$', self.admin_site.admin_view(self.move_to_job_category_view), name='admin_jobtitle_move_to_cat',)
)
return custom_urls + urls
为简单起见,我省略了视图代码。
这两种模式没有定义,因为如果我尝试访问它们,我会得到 404,并且它们没有在 django debud 404 页面中列出。然而 get_urls 方法被正确调用(实际上是两次,不知道为什么)。
有什么问题?