当前位置: 首页 > 面试题库 >

将jQuery脚本添加到Django管理界面

柳珂
2023-03-14
问题内容

我将稍微简化一下情况。假设我有一个名为Lab的模型。

from django.db import models

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

该字段query几乎总是与该字段相同acronym。因此,我希望在Django管理界面query中的acronym字段中输入文本后自动填写该字段。此任务必须由jQuery脚本执行。

因此,如果我举一个例子:你想通过Django管理界面向数据库添加一个新实验室。你单击添加按钮,你将进入带有两个字段的空白表格。你手动acronym使用诸如的值填写该字段,ABCD然后该query字段应自动以相同的值填写,即ABCD

我应该如何进行?


问题答案:

要将媒体添加到管理员,你只需将其添加到你的管理员类的元类媒体,例如:

管理员

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;
}

为了解决你的问题,我将扩展admin。你可以将js事件添加到任何DOM节点,以触发myscript文件中的ajax调用,以处理正确的admin视图。



 类似资料:
  • 我很喜欢这个从http://www.jqueryscript.net/time-clock/modern-circular-jquery-countdown-timer-plugin-final-countdown.html下载的倒计时脚本,想把它用到我的wordpress网站上,我读了一些关于如何在wordpress中放入任何脚本的教程,但是我不能完全理解,因为我是新手,你能帮我一步一步地做吗

  • 主要内容:启动管理界面Django为管理活动提供随时可以使用的用户界面。 我们都知道,管理界面对于一个Web项目是十分重要的。 Django根据您的项目模型自动生成管理界面。 启动管理界面 管理界面依赖于 django.contrib 模块。若需它工作,需要确保一些模块是否导入在 myproject/settings.py 文件中的INSTALLED_APPS和MIDDLEWARE_CLASSES元组。 对于 INST

  • 问题内容: 我想在Linux PATH中添加一个小脚本,因此不必在实际放置在磁盘上的地方实际运行它。 该脚本非常简单,它是关于通过代理赋予apt-get访问权限的,我使它像这样: 然后,我将其保存为apt-proxy.sh,将其设置为+ x(chmod),当我位于该文件所在的目录中时,一切正常。 我的问题是:如何将此 apt-proxy 添加到 PATH, 以便实际上可以将其称为真正的apt-ge

  • 我想在linux路径中添加一个小脚本,这样我就不必在磁盘上实际运行它。 这个脚本非常简单,是关于通过代理提供apt-get访问权限的,我是这样做的: 然后我将其保存为apt代理。sh,将它设置为x(chmod),当我在这个文件所在的目录中时,一切都正常工作。 我的问题是:如何将这个apt-代理添加到PATH中,这样我就可以实际调用它,就好像它是真正的apt-get一样?[从任何地方] 寻找命令行唯

  • 问题内容: 我有一个相对简单的问题,试图将内联脚本添加到React组件。到目前为止,我有: 我也尝试过: 两种方法似乎都无法执行所需的脚本。我猜这是我所缺少的简单事情。有人可以帮忙吗? PS:忽略foobar,我有一个真正的ID正在使用中,而我不想共享。 问题答案: 编辑:事情变化很快,这已经过时了-查看更新 您是否想在每次渲染此组件时一次或一次将该组件安装到DOM中时一次又一次地获取并执行脚本?

  • 问题内容: 我有一个相对简单的问题,试图将内联脚本添加到React组件中。到目前为止,我有: 我也尝试过: 两种方法似乎都无法执行所需的脚本。我想这很简单,我很想念。有人可以帮忙吗? PS:忽略foobar,我确实有一个真正的ID正在使用,而我不想共享。 问题答案: 编辑:事情变化很快,这已经过时了-查看更新 您是否想在每次渲染此组件时一次或一次将该组件安装到DOM中时一次又一次地获取并执行脚本?