Django 管理员:Django 未定义



当我在 django admin(更新表单)中显示表单时出现错误:

Uncaught ReferenceError: django is not defined

错误在以下行中:

(function($) {
  $("#participations-group .tabular.inline-related tbody tr").tabularFormset({
    prefix: "participations",
    adminStaticPrefix: '/static/admin/',
    addText: "Ajouter un objet Participation À Une Campagne supplémentaire",
    deleteText: "Supprimer"
  });
})(django.jQuery);

代码是由 django 生成的。

在我的管理表单中,我正在使用一个 js 文件:

class CampaignAdmin(admin.ModelAdmin):
    class Media:
        js = (
            'js/admin/campaign.min.js',
        )

正如这篇文章 https://stackoverflow.com/a/10584539/1875861 所建议的那样,我添加了两个js文件:

class CampaignAdmin(admin.ModelAdmin):
    class Media:
        js = (
            'admin/js/jquery.min.js',
            'admin/js/jquery.init.js',
            'js/admin/campaign.min.js',
        )

但它仍然不起作用:(。

问题出在哪里?

如果你使用的是 1.9 或 1.8,你不需要将 jquery 添加到你的 js 媒体中:参见:https://docs.djangoproject.com/en/1.9/ref/contrib/admin/#contrib-admin-jquery

您是否尝试过此配置?

(function($){
    $(document).ready(function(){
        $("#participations-group .tabular.inline-related tbody tr").tabularFormset({
          prefix: "participations",
          adminStaticPrefix: '/static/admin/',
          addText: "Ajouter un objet Participation À Une Campagne supplémentaire",
          deleteText: "Supprimer"
        });
        });
    });
}(django.jQuery));

我关注了这篇文章:http://coreymaynard.com/blog/adding-jquery-event-listeners-to-dynamically-creat/

最新更新