2

是否需要将 jQuery 添加到我创建的每个项目中,或者最新的 Django 版本(1.5.1)是否内置了它?那么我可以直接从框架中导入使用吗?我的问题来自阅读文档中的这部分内容。然后我找到了这个安装 jquery的 pyip-packageINSTALLED_APPS ,所以我可以将它添加到settings.py 的列表中。

我的问题是我是否需要安装额外的东西,或者 Django 是否已经安装了,所以我可以在没有的情况下添加 jQuery?

4

3 回答 3

5

是和不是。

Django 1.5django.contrib.admin确实为所有管理功能(日期选择器等)打包了 jQuery v1.4.2

如果您对 v1.4.2 感到满意,那么您可以像这样包含它:

{% load static %}
<script src="{% static 'admin/js/jquery.js' %}"></script>

但是,您最好的选择可能是自己包含它。

如果你想使用它们,有各种 PyPI 包已经为你打包好了(我个人发现它们不包含最新版本)

我的设置使用带有本地备份的 CDN,如下所示:

<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src={% static "myapp/js/vendor/jquery-2.0.0.min.js" %}><\/script>')</script>

CDN 具有各种优势,包括(无特定顺序):

  1. 可能比您的托管更快
  2. 用户可能已经从另一个站点缓存了它
  3. 为您的主机减少流量
于 2013-05-09T09:23:58.417 回答
0

不,Django 没有包含 jQuery。

在我看来,安装 jQuery 最简单的方法是添加这一行

<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>

<head/>你的base.html

<!DOCTYPE html>
<head>
    <meta charset="utf-8">
    <script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
</head>
<body>
</body>
于 2013-05-09T09:12:13.017 回答
0

是的,但它被称为“django.jQuery”!

在第 27 行的admin\change_list.html中:

(function($) {
    $(document).ready(function($) {
        $("tr input.action-select").actions();
    });
})(django.jQuery);
于 2013-05-09T09:17:57.547 回答