我正在为 Django 应用程序的管理站点实现帮助系统。帮助文本在名为 admin-help 的单独应用程序中作为模型对象实现。管理站点使用Grappelli
.
设置如下。
在我的主要urls.py
我有:
(r'^admin-help/', include('admin-help.urls')),
它位于默认admin
url 和Grappelli
url 之前。
在我拥有urls.py
的应用程序中:admin-help
urlpatterns = patterns('',
...
url(r'^admin-help/list-modelXYZ', 'admin-help.views.list-modelXYZ'),
...
)
我的计划是通过 AJAX 调用从管理页面中提取帮助页面。因此,我修改了一个特定的管理模板,以包含一个带有onclick
处理程序的帮助按钮,以调用传递主题的 Javascript 函数:
<li>
<a href="#" onclick="showHelp('list_modelXYZ')" class="grp-state-focus">Help</a>
</li>
该showHelp()
函数执行 AJAX 调用,将请求的主题作为请求的 url 的一部分传递:
function showHelp(topic) {
grp.jQuery.ajax({
type: 'GET',
url: '/admin-help/' + topic,
success: function(html) {
grp.jQuery('#help-content-area').html(html);
grp.jQuery('#help-frame').show();
}
});
}
在我的 admin-help 应用程序中views.py
:
def list_modelXYZ():
return HttpResponse("Hello world!")
当我单击帮助按钮时,我得到一个带有以下 url 的 404:
http://localhost:8080/admin-help/list_modelXYZ
为什么我会得到 404?我不是 Django Jedi,希望有人能指出我的错误......