添加jQuery脚本到Django管理界面(Adding a jQuery script to th

2019-08-31 06:12发布

我稍微要去简化局面。 比方说,我有一个叫做实验室模型。

from django.db import models

class Lab(models.Model):
    acronym = models.CharField(max_length=20)
    query = models.TextField()

现场query几乎总是一样的场acronym 。 因此,我想在query字段中输入文本后自动填写acronym在Django管理界面领域。 这个任务必须由jQuery脚本来执行。

所以,如果我举个例子:你想通过Django管理界面,新的实验室添加到数据库中。 点击Add按钮,你的土地与两个字段的空表格上。 通过手工填写的acronym与一个值,如现场ABCD ,然后将query字段应自动计量使用相同的值来完成,这意味着ABCD

我应该怎么做?

Answer 1:

要添加媒体到管理,你可以简单地添加到您的管理类,例如元类媒体:

admin.py

class FooAdmin(admin.ModelAdmin):
    # regular stuff
    class Media:
        js = (
            '//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js', # jquery
            'js/myscript.js',       # project static folder
            'app/js/myscript.js',   # app static folder
        )

admin.site.register(Foo, FooAdmin)

当心后面的逗号,如果你只有一个包含文件,因为它是一个元组。 您也可以选择在CSS这种方式。

管理员已经包含的jQuery(旧版本)。 为了快捷它使用它添加到“的MyScript”文件的顶部:

if (!$) {
    $ = django.jQuery;
}

为了解决你的问题,我会延长管理 。 您可以在JS事件添加到任何DOM节点触发您的MyScript文件处理上的正确的管理视图Ajax调用。



文章来源: Adding a jQuery script to the Django admin interface