【问题标题】:Django admin, display actions as buttonsDjango admin,将操作显示为按钮
【发布时间】:2016-09-16 01:41:34
【问题描述】:

在 Django 管理中,有一个操作下拉列表。

我想要实现的是摆脱下拉列表和“开始”按钮,而是将我的操作显示为按钮。

怎么做?提前致谢。

【问题讨论】:

标签: django python-3.x django-templates django-admin


【解决方案1】:

在你的静态目录中创建一个js文件action_buttons.js

(function ($) {

    function fix_actions() {
        var container = $('div.actions');

        if (container.find('option').length < 10) {
            container.find('label, button').hide();

            var buttons = $('<div></div>')
                .prependTo(container)
                .css('display', 'inline')
                .addClass('class', 'action-buttons');

            container.find('option:gt(0)').each(function () {
                $('<button>')
                    .appendTo(buttons)
                    .attr('name', this.value)
                    .addClass('button')
                    .text(this.text)
                    .click(function () {
                        container.find('select')
                            .find(':selected').attr('selected', '').end()
                            .find('[value=' + this.name + ']').attr('selected', 'selected');
                        $('#changelist-form button[name="index"]').click();
                    });
            });
        }
    };

    $(function () {
        fix_actions();
    });
})(django.jQuery);

将以上代码复制到js文件中

在你admin.py下的admin类添加

class Media:
    js = ('path/to/action_buttons.js', )

【讨论】:

    猜你喜欢
    • 2011-08-10
    • 2019-10-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多