Django Form:在Media类中渲染'js'属性时,Django在每个标题字母上调用<script>?

Ama*_*shy 2 python django

我决定将自己需要的东西放在一起 - 这意味着我要以Django形式实现一些javascript.

我目前的表格如下:

class SoundTestPairForm(forms.Form):
    LANGUAGE_CHOICES = [[d['language'], d['language']] for d in Sound.objects.order_by('language').values('language').distinct()]
    lesson_name = forms.CharField(widget=forms.HiddenInput())
    sound_pk = forms.CharField(widget=forms.HiddenInput())
    master_phrase1 = forms.CharField(widget=forms.HiddenInput())
    master_phrase2 = forms.CharField(widget=forms.HiddenInput())

    sex = forms.MultipleChoiceField(
            choices=Sound.SEX_CHOICES
    )

    starts_with = forms.MultipleChoiceField(
            choices=Sound.POS_CHOICES
    )

    language = forms.MultipleChoiceField(
            choices=LANGUAGE_CHOICES
    )

    user_sound = forms.ModelMultipleChoiceField(
            queryset=Sound.objects.all(),
    )

    class Media:
        js = ('filter_queryset.js')
Run Code Online (Sandbox Code Playgroud)

但是当我form_instance = SoundTestPairForm()打电话时form_instance.media.render,我得到:

[u'<script type="text/javascript" src="/static/f"></script>', u'<script type="text/javascript" src="/static/i"></script>', u'<script type="text/javascript" src="/static/l"></script>', u'<script type="text/javascript" src="/static/t"></script>', u'<script type="text/javascript" src="/static/e"></script>', u'<script type="text/javascript" src="/static/r"></script>', u'<script type="text/javascript" src="/static/_"></script>', u'<script type="text/javascript" src="/static/q"></script>', u'<script type="text/javascript" src="/static/u"></script>', u'<script type="text/javascript" src="/static/y"></script>', u'<script type="text/javascript" src="/static/s"></script>', u'<script type="text/javascript" src="/static/"></script>', u'<script type="text/javascript" src="/static/j"></script>']
Run Code Online (Sandbox Code Playgroud)

出于某种原因,它正在查看文件名的每个字母而不是整个文件名?render_js()给出相同的结果.

我发现了一个错误吗?

Ala*_*air 5

你错过了一个逗号来制作js一个元组.

class Media:
    js = ('filter_queryset.js',)
Run Code Online (Sandbox Code Playgroud)

没有逗号,('filter_queryset.js')就是字符串'filter_queryset.js'.