2009-04-09 3 views
3

Ich brauche externe Links in der Administrationsoberfläche Rasterspalte zu erzeugen, aber sie zeigt sich als HTML-Code:Wie können externe Links in der Django Admin-Schnittstelle angezeigt werden?

<a href="http://www.site.com/">site</a> 

Admin-Schnittstelle übersetzt meine Links als HTML-Entitäten und sie nicht zeigt, wie rechts Links. Ist es möglich, dort externe Links anzuzeigen, nicht HTML-Code?

Ich denke list_display_links funktioniert nicht für diesen Zweck.

Vielen Dank!

Antwort

1

den richtigen Weg, dies 2.0 in Django zu tun ist, die Zeichenfolge als sicher HTML zu markieren. Noch besser ist es, format_html() zu verwenden, damit Django den Argumenten immer noch entkommen kann.

from django.utils.html import format_html 

def my_link_field(self): 
    return format_html(
      '<a href="{0}">{1}</a>', 
      self.my_external_url, 
      self.my_link_display_name, 
     ) 
Verwandte Themen