django-private-views

Screenshot Λογισμικό:
django-private-views
Στοιχεία Λογισμικού:
Εκδοχή: 1.0
Ανεβάστε ημερομηνία: 15 Apr 15
Προγραμματιστής: Julien Phalip
Άδεια: Δωρεάν
Δημοτικότητα: 12

Rating: 5.0/5 (Total Votes: 1)

Django-ιδιωτικού απόψεων είναι ένα app Django που παρέχει ένα κοινό πρότυπο σε ιστοσελίδες είναι όταν μερικές σελίδες που προστατεύονται και απαιτούν μια σύνδεση για να προσεγγιστεί & nbsp?. Ηlogin_required διακοσμητής συχνά έρχεται σε βολικό για αυτές τις καταστάσεις. Όμως, ένα άλλο σχέδιο το οποίο είναι αρκετά κοινό είναι όταν το μεγαλύτερο μέρος του site προστατεύονται, με λίγες εξαιρέσεις των σελίδων που παραμένουν κοινό (π.χ. FrontPage, σελίδα εγγραφής, κλπ). Σε αυτή την περίπτωση, μπορεί να είναι αρκετά κουραστικό να διακοσμήσετε όλα τα απόψεων μεlogin_required, και μπορεί να είναι εύκολο να ξεχάσετε να διακοσμήσει κάποια από αυτά.
Django-ιδιωτικού θέα προστατεύει κάθε άποψη και, στη συνέχεια, σας επιτρέπει να ρητά πείτε ποια απόψεις πρέπει να είναι δημόσιες. Αυτό κάνει τα πράγματα τόσο ευκολότερη και λιγότερο επιρρεπής σε λάθη.
installation
Εγκαταστήστε Django-ιδιωτικού θέα από PyPI.
Pip εγκατάσταση Django-ιδιωτικού θέα
Προσθέστε το middleware privateviews στις ρυθμίσεις σας:
MIDDLEWARE_CLASSES = (
& Nbsp? ...
& Nbsp? Privateviews.middleware.LoginRequiredMiddleware
)
Δηλώνοντας δημόσια θέα
Σε αυτό το σημείο, όλες τις απόψεις σας, εκτός settings.LOGIN_URL θα σας ζητήσει να συνδεθείτε. Έτσι, πρέπει τώρα να καθορίσετε τις λίγες απόψεις που πρέπει να είναι δημόσιες. Υπάρχουν τρεις διαφορετικοί τρόποι στη διάθεσή σας: χρησιμοποιώντας ένα ειδικό διακοσμητή, παραθέτοντας τις δημόσιες απόψεις, ή παραθέτοντας τις δημόσιες μονοπάτια URL.
Χρησιμοποιώντας ένα διακοσμητή
Χρησιμοποιώνταςlogin_not_required μπορείτε να επιβάλετε ρητά, προκειμένου να είναι δημόσιες. Για παράδειγμα:
από privateviews.decorators εισαγωγή login_not_required
login_not_required
def frontpage (αίτηση):
& Nbsp? ...
Σε αυτή την περίπτωση, η θέα FrontPage θα εμφανίζονται σωστά ακόμα κι αν & rsquo? Re Δεν έχετε εισέλθει.
Καταχώρηση δημόσια θέα
Αν don & rsquo? T έχουν άμεση πρόσβαση να τροποποιήσετε μια άποψη & rsquo? S κώδικα (π.χ., το & rsquo? S σε μια εφαρμογή τρίτου κατασκευαστή), μπορείτε ακόμα να αναγκάσει την άποψη αυτή να είναι δημόσια, προσθέτοντας ότι με τη ρύθμιση PUBLIC_VIEWS στο αρχείο ρυθμίσεων σας. Εδώ & rsquo? S ένα παράδειγμα, αν & rsquo? Εκ νέου χρήση του συστήματος django.contrib.auth και την εφαρμογή Django καταχώρηση:
PUBLIC_VIEWS = [
& Nbsp? "Django.contrib.auth.views.login»,
& Nbsp? "Django.contrib.auth.views.password_reset_done»,
& Nbsp? "Django.contrib.auth.views.password_reset»,
& Nbsp? "Django.contrib.auth.views.password_reset_confirm»,
& Nbsp? "Django.contrib.auth.views.password_reset_complete»,
& Nbsp? "Registration.views.register»,
& Nbsp? "Registration.views.activate»,
]
Listing URL δημόσια μονοπάτια
Ο τρίτος και τελευταίος τρόπος είναι να καθορίσετε άμεσα τις διαδρομές URL (όπως κανονικές εκφράσεις) για τις σελίδες που θέλετε να είναι δημόσιες. Αυτό μπορεί να είναι χρήσιμο, για παράδειγμα, αν μια σελίδα που παρέχονται από μία γενική άποψη. Είναι επίσης χρήσιμο εάν είστε εξυπηρετούν τα αρχεία πολυμέσων σας στατικά μέσω Django (συνιστάται μόνο σε στάδιο ανάπτυξης). Για αυτό, θα πρέπει να προσθέσετε τις PUBLIC_PATHS ρύθμιση στο αρχείο ρυθμίσεων σας. Εδώ & rsquo? S ένα παράδειγμα:
PUBLIC_PATHS = [
& Nbsp? '^% S'% MEDIA_URL,
& Nbsp? '^ / Λογαριασμούς / εγγραφή / πλήρη / $, # Χρησιμοποιεί την «direct_to_template« γενική άποψη
]
Κάνοντας 404 προβολές ιδιωτικών
Σε αυτό το σημείο μη συνδεδεμένους χρήστες θα εξακολουθούν να είναι σε θέση να δουν 404 απαντήσεις αν επισκεφθούν μια διεύθυνση URL που δεν χάρτη με θέα. Αυτό δεν είναι ιδανική, δεδομένου ότι δεν θα πρέπει να είναι δυνατόν να προσδιοριστεί η δομή της τοποθεσίας, χωρίς να εισέλθει.
Για να κάνετε 404 απόψεις του ιδιωτικού σε όλους, εκτός από συνδεδεμένους χρήστες, προσθέστε το εξής ως την τελική γραμμή στην κορυφή urlconf επίπεδο σας:
urlpatterns = πρότυπα ('',
& Nbsp? ...
& Nbsp? Url (r '^', 'privateviews.views.private_404 »)
)

Απαιτήσεις :

  • Python
  • Django

Άλλο λογισμικό του προγραμματιστή Julien Phalip

glamkit-adminboost
glamkit-adminboost

11 May 15

django-treemenus
django-treemenus

12 May 15

Σχόλια για django-private-views

Τα σχόλια δεν βρέθηκε
προσθήκη σχολίου
Ενεργοποιήστε τις εικόνες!