【问题标题】:Django: django-admin-tools: adding custom jsDjango:django-admin-tools:添加自定义 js
【发布时间】:2012-03-29 05:45:11
【问题描述】:

我已经安装了 django-admin-tools 并在我的项目中创建了一个 dashboard.py 文件夹。

在这个文件中我指定了一个媒体类:

#myproject/dashboard.py 
class Media: 
        css = ('',) 
        js = ('http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/ 
jquery.min.js',) 

在我的设置中:

#settings.py
# admin_tools 
ADMIN_TOOLS_INDEX_DASHBOARD = 
'myproject.dashboard.CustomIndexDashboard' 
ADMIN_TOOLS_APP_INDEX_DASHBOARD = 
'myproject.dashboard.CustomAppIndexDashboard' 

而我的网址配置如下:

#urls.py
... 
urlpatterns+= patterns('', 
        url(r'^admin_tools/', include('admin_tools.urls')), 
        url(r'^admin/', admin.site.urls), 

        url(r'', include('feincms.urls')), 

) 

有人看到明显的错误吗?我没有看到 jquery 文件 在萤火虫中下载。我假设 jquery 也是 admin_tools 的一部分, 但是这个错误信息似乎表明它不是?

Uncaught TypeError: Property '$' of object [object DOMWindow] is not a 
function 

感谢任何帮助。

【问题讨论】:

  • 什么意思?如果我“手动”包含 jquery,则该代码有效。没有管理工具,一切正常......
  • 我认为这不是问题所在。如我的问题所述,浏览器甚至不会尝试下载文件。脚本标签不在源代码中。一定是其他一些琐碎的问题。
  • 所以脚本标签没有出现?尝试删除空的 css 变量?另外,如果你放一个本地的js路径而不是http呢?那么它出现了吗?

标签: django django-admin django-admin-tools


【解决方案1】:

我认为这可能是因为 jQuery 函数已在 django admin 中重命名以避免冲突。
如果您可以在视图源中看到正在加载的 jquery 文件,并且在控制台中键入 $ 会产生该错误,那么请尝试 django.jQuery
如果你想使用 $ 你需要做一些类似 $ = django.jQuery 的事情,然后在你脚本的底部,把它放回 django.jQuery
参见https://github.com/philippbosch/django-geoposition/blob/master/geoposition/static/geoposition/geoposition.js 例如。

【讨论】:

    【解决方案2】:

    你是对的,jquery 已经包含在 admin_tools 中。除非您需要更新的版本,否则最好使用随附的版本。或者即使没有 Media 类也不加载?

    您的设置中的问题是您从外部主机加载 jquery。我也希望这可以工作,但是,如果您查看注入文件的 admin_tools 中的 dashboard.html 模板,您会注意到它在每个 js 文件前添加了 {{ media_url }}。结果是无效的包含,例如'/media/http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js'。这显然是 admin_tools 的问题,我会提交错误报告。

    作为一种解决方法,您可以删除 Media 类并覆盖 dashboard.html 以包含您的外部文件。

    【讨论】:

      猜你喜欢
      • 2012-10-11
      • 1970-01-01
      • 2011-04-25
      • 1970-01-01
      • 1970-01-01
      • 2017-02-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多