2017-02-05 17 views
0

Говоря настраивать, я не имею в виду использование list_display и тому подобное.Как настроить столбцы модели панели администратора django? django

Мое значение настройки заключается в том, что мне нужен столбец, который не находится в модели.

Идея состоит в том, что я хочу создать столбец, в котором скачана загрузка, и в модели нет такого атрибута, как загрузка. Это всего лишь URL-адрес, который я хочу настроить самостоятельно, который будет отображаться в каждой строке.

Простым примером может быть что-то подобное на странице администратора в одной из случайных моделей. Скажем, это моя модель сотрудника. На моей странице администратора он покажет имя сотрудника, и в правой части я бы хотел создать собственный URL-адрес загрузки, который будет экспортировать, скажем, информацию пользователя. У меня есть готовые коды экспорта и url, но я не уверен, как настроить его на странице администратора.

Model Employee 
------------------------------- 
name   | download 
------------------------------- 
Goerge   | download 
Fluffy   | download 
Techy   | download 

У каждого есть идеи, как это можно сделать?

Заранее спасибо

ответ

1

Вы можете создать функцию в подклассе «ModelAdmin», что делает пользовательский контент в таблице результатов для каждой записи, как в этом answer.

Например, предположим, что ваш текст «скачать» в вашей таблице связан с поиском Google («https://www.google.com.au/search?q=test»). Вы можете сделать что-то вроде этого:

from django.contrib import admin 

class EmployeeAdmin(admin.ModelAdmin): 
    fields = ('name') 
    list_display = ('name', 'download') 

    def download(self, obj): 
     return '<a href=https://www.google.com.au/search?q="' + obj.name + '">' + obj.name + '</a>' 

    download.allow_tags = True 
1
from django.utils.html import format_html 

class EmployeeAdmin(ModelAdmin): 
    list_display = ('download',) 

    def download(self, obj): 
     return format_html('<a href="/your/path/download/{}/">Download</a>', obj.pk) 
    download.short_description = 'Download Link' 

 Смежные вопросы

  • Нет связанных вопросов^_^