Функция Django Admin onclick - PullRequest
       7

Функция Django Admin onclick

1 голос
/ 13 марта 2019

Я создал следующие функции в списке администратора Django!

admin.py

    class LawyerAdmin(admin.ModelAdmin):

    list_display = ('lawyer_idx', 'show_firm_url', 'lawyer_name', 'lawyer_birthday', 'lawyer_mobile', 'lawyer_license_num', 'like_cnt', 'recommend_name', 'register_date', 'status', 'lawyer_agent',)
    list_filter = ['lawyer_status']

    def status(self, obj):

        if obj.lawyer_status == "W":
            html = "Awaiting certification<br> <input type='button' value='certification' onclick='lawyer_confirm({0})'>"

        return format_html(html, obj.lawyer_idx)

admin.site.register(Lawyer, LawyerAdmin)

Когда я нажимаю кнопку On-Click, я хочу запустить следующий скрипт, но я не знаю как. Пожалуйста, помогите мне.

1. I want to implement the on-click function.

2. How to run a script

<script>
      function lawyer_confirm(lawyer_idx) {
        if (confirm('Certified?') == true) {
            $.ajax({
                url: '/admin/lawyer/view/lawyer_confirm',
                data: {
                    lawyer_idx : lawyer_idx
                },
                dataType: "json",
                type: 'post',
                success: function(result){
                    alert(result.msg);
                    if (result.code == '0' ) {
                        location.href = result.retURL;
                    }
                }
            });
        }
      }
</script>

1 Ответ

0 голосов
/ 13 марта 2019

Чтобы добавить мультимедиа для администратора, вы можете просто добавить его в мета-класс Медиа вашего класса администратора, например:

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

Вы можете добавить собственную логику, чтобы выбрать элемент HTML и делать то, что вы хотите вJS.

...