Die Prüfung für die Erlaubnis in der django-template nicht funktioniert
Ich will, um zu überprüfen, user-Berechtigung in der Vorlage. Wenn ein Benutzer die Berechtigung hat, die er/Sie in der Lage, auf die Vorlage zugreifen. Nach dem schreiben den code unten und ich gewährte der Benutzer die Berechtigung, wenn ich die Seite anzuzeigen, wird es Herbst auf der {% else %}
- Anweisung. zeigen Sie, dass die Benutzer keine Berechtigung haben. Wie kann ich dies angehen?
#CREATED A GROUP IN DJANGO ADMIN CALLED 'Premium'
Class Paid(models.Model):
#models here
class Meta:
permissions=(
("view_film","Can view film"),
)
Ansicht
def eyo(request):
return render_to_response('eyo.html',context_instance=RequestContext(request))
Vorlage
{% block content %}
{% if perms.paid.can_view_film %}
<form action='https://www.test.com/checkout' method='post'>
<input name='submit' type='submit' value='Checkout' />
</form>
{% else %}
<p> yo broke! </p>
{% endif %}
- Bitte posten Sie Ihre Ansicht
- Bitte haben Sie einen Blick in die ähnliche Frage stackoverflow.com/questions/9469590/...
- Ansh, habe ich noch keinen Erfolg!!
- In der Sie Ihre Ansicht oder Ihre benutzerdefinierte admin-view, stellen Sie sicher, pass-Anforderung-Objekt oder Kontext, manchmal beim anpassen von Ansichten Kontext ist nicht vergangen, und Dauerwellen nicht gut gefüllt.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sind Sie vorbei Dauerwellen in Ihre Vorlage?
Sind Sie auf der Einstellung Dauerwellen.bezahlt.can_view_film entweder explizit in der Sie Ihre Ansicht oder über das admin-interface?
Ist der Benutzer ein Teil einer Gruppe ist, hat der Dauerwellen.bezahlt.can_view_film Erlaubnis?
Sind Sie sicher, dass der app-name wird 'bezahlt'? Das soll den app-name, nicht der name des Modells.
Django Dauerwellen
Ich bin dabei einige conditional rendering basierend auf den Berechtigungen, die in einem Django-Projekt, an dem ich gerade arbeite, auf. Ein kleines Beispiel dafür ist ein bestimmtes Symbol. Grundsätzlich hat ein Benutzer eine Berechtigung löschen, die Sie sehen, ein Symbol, wenn Sie nicht, Sie sehen eine andere. Dies ist, wie es ist getan in meinem templete:
Wenn der Benutzer eingeloggt ist, hat
can_delete_list
sehen Sie eine Sache. Wenn nicht, sehen Sie etwas anderes. Funktioniert diese Hilfe?List
ist das Klasse hier.can_delete_list
ist eine automatisch generierte Zustimmung von Django.