Как поместить пользовательский HTML в changeview администратора django? - PullRequest
1 голос
/ 31 октября 2010

Когда я опишу параметры администратора для модели, можно добавить любой метод в list_display, тогда мы можем добавить 'allow_tags = True' и получить HTML. Есть ли такие же варианты, кроме как для «изменения»? Я могу изменить шаблон для формы, но есть некоторые вычисления, которые возвращают HTML, поэтому не стоит помещать их все в шаблон.

class OrderAdmin(admin.ModelAdmin):
    list_display = ('__unicode__','render_html')

render_html - это метод модели, он работает в виде списка, а установка его в 'fields' не работает.

1 Ответ

0 голосов
/ 17 апреля 2012

Это взлом, но он должен работать.

 class OrderAdmin(admin.ModelAdmin):        
     def render_change_form(self, request, context, *args, **kwargs):
         context['adminform'].form.fields['somefield'].helptext= self.colored_name()
         return super(OrderAdmin, self).render_change_form(request, context, args, kwargs) 
     def colored_name(self):
         return '<span style="color: #%s;">%s %s</span>' % (self.color_code, self.first_name, self.last_name)
     colored_name.allow_tags = True  
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...