1

我可以使用选定的 jquery 直接将 ManyToManyField 放入选定的小部件:

<script type="text/javascript" src="{{ STATIC_URL }}projectx/projectx_chosen.js"></script>

项目x_chosen.js:

$(document).ready(function () {
    $('#id_sales_item').chosen();
});

这清楚地表明我的 static_url 设置正确。

但是尝试用 django-chosen 实现同样的目标没有任何效果。

class DealType(models.Model):   
    sales_item          = models.ManyToManyField(SalesItem)


class DealTypeForm(ModelForm):   

    class Meta:
        model = DealType

        widgets = {
                    'sales_item': ChosenSelectMultiple(),
                   }

我选择了.jquery.min.js 下{{STATIC_URL}}js/chosen.jquery.min.js 和 selected.css 下{{STATIC_URL}}css/chosen.css

知道为什么这不起作用吗?

更新

[21/Aug/2012 11:16:13] "GET /static/css/chosen.css HTTP/1.1" 304 0
[21/Aug/2012 11:16:16] "GET /static/js/chosen.jquery.min.js HTTP/1.1" 304 0

因此,根据我对源代码的调查,现在两者都处于扩展所期望的路径中。他们被加载了。

然而它根本行不通。

直接使用 selected.js 就像一个魅力,所以我知道我通常会如何使用它,但是 django-chosen 似乎还没有成熟。

4

1 回答 1

0

我遇到了同样的问题,并通过链接到 selected.jquery.ready.js 文件来解决它。所以我有:

<link href="{% static 'css/chosen.css' %}" rel="stylesheet">
<script type="text/javascript" src="{% static 'js/chosen.jquery.js' %}"></script>
<script type="text/javascript" src="{% static 'js/chosen.jquery_ready.js' %}"></script>
于 2012-10-09T01:38:35.003 回答