2017-06-13 4 views
0

Probleme beim Abrufen dieser Informationen in meiner Vorlage korrekt formatiert. Ich habe Google und Stack-Überlauf ausführlich gesucht, aber ich konnte dieses Problem nicht lösen.Django Anzeigen und Formatieren von Gruppennamen in Vorlage

Ich verwende django-role-permissions und ich habe eine Reihe von Rollen erstellt, die der Gruppe jedes Benutzers zugewiesen werden. Ich möchte alle Gruppen, in denen sie sich befinden, in meiner Vorlage mit einem Komma dazwischen anzeigen. Ich möchte auch das '_' zwischen den Namen mit einem Leerzeichen tauschen. Die nächstgelegene ich gekommen bin, ist die Gruppennamen wie folgt dispayed zu erhalten:

Driver Freight_manager System_admin Employee_manager 

Ich habe versucht, ein paar individuellen templatetags aber alles teilt sie in einen individuellen Charakter mit einem ‚‘ dazwischen. Letztlich will ich es wie die folgenden sehen, aber ich kann es nicht herausgefunden:

Driver, Freight Manager, System Admin, Employee Manager 

Hier ist mein Template-Code:

{% for g in profile_detail.user.groups.all %} 
    {{ g.name|capfirst }} 
{% endfor %} 

Ich gehe davon aus, dass ich das tun kann, in eine Vorlage und muss die Ansicht nicht ändern. Kann mir jemand mit einem Templatetag oder etwas helfen, damit das funktioniert? Es macht mich verrückt.

Antwort

0

Fabrikat TemplateTag:

@register.filter(name='split') 
def split(value, arg): 
    return " ".join(value.split(arg)).title() 

HTML

{% load <file name of template tag> %} 
    {% for g in profile_detail.user.groups.all %} 
      {{ g.name|split:'_' }}, 
    {% endfor %} 
+0

näher, aber nicht ganz da. Ausgabe ist '['Driver'], [Fracht ',' Manager '], [' System ',' Admin '], [' Mitarbeiter ',' Manager '],' –

+0

Überprüfen Sie jetzt mit aktualisierten Code –

+0

Es hat funktioniert. ..leave am Ende ein abschließendes Komma, aber das kann ich später beheben. Danke, Mann. Schätze es wirklich! –

Verwandte Themen