Συχνές Ερωτήσεις: Το admin site¶
Δε μπορώ να συνδεθώ. Όταν εισάγω τα σωστά username και password, επαναφορτώνεται η ίδια login σελίδα, χωρίς μηνύματα σφάλματος.¶
Το cookie που αφορά το login δεν έχει σεταριστεί σωστά, επειδή το domain του cookie που έστειλε το Django δεν ταιριάζει με το domain στον browser σας. Δοκιμάστε να θέσετε τη ρύθμιση SESSION_COOKIE_DOMAIN
μέσα στο γενικό αρχείο ρυθμίσεων ούτως ώστε να ταιριάζει με το domain σας. Για παράδειγμα, αν επισκέπτεστε τη σελίδα «https://www.example.com/admin/» με τον browser, τότε στο γενικό αρχείο ρυθμίσεων του project σας, «myproject.settings», θα θέσετε τη ρύθμιση SESSION_COOKIE_DOMAIN
= “www.example.com”.
Δε μπορώ να συνδεθώ. Όταν εισάγω τα σωστά username και password, επαναφορτώνεται η ίδια login σελίδα, με ένα σφάλμα που λέει «Παρακαλώ εισάγετε το σωστό username και κωδικό».¶
Εάν είστε σίγουροι ότι το όνομα χρήστη και ο κωδικός σας είναι σωστά, σιγουρευτείτε ότι η τιμή της ρύθμισης is_active
και is_staff
, του λογαριασμού σας, είναι True. Το admin site επιτρέπει την είσοδο μόνο σε άτομα που η τιμή και των δύο αυτών πεδίων είναι True.
Πως μπορώ να σετάρω μια τιμή ενός πεδίου πάνω στον χρήστη που αλληλεπίδρασε τελευταίος με κάποιο object μέσω του admin;¶
Η κλάση ModelAdmin
παρέχει παραμετροποιήσιμα hooks τα οποία σας επιτρέπουν να επιδράσετε με ένα object πριν και μετά την αποθήκευση του, χρησιμοποιώντας πληροφορίες από το request. Αντλώντας τον τρέχον χρήστη από το request και κάνοντας override τη μέθοδο (ή hook, αν θέλετε) save_model()
, μπορείτε να αλλάξετε το object προκειμένου να δείχνει στον user που το άλλαξε. Δείτε στο εγχειρίδιο σχετικά με τις μεθόδους του ModelAdmin για παραδείγματα.
Πως μπορώ να περιορίσω την πρόσβαση στο admin site ούτως ώστε τα objects να τα επεξεργάζονται μόνο οι χρήστες που τα δημιούργησαν;¶
Η κλάση ModelAdmin
παρέχει, επίσης, επιπλέον hooks (μεθόδους, αν θέλετε) τα οποία σας επιτρέπουν να ελέγχετε την προβολή ή όχι καθώς και την δυνατότητα επεξεργασίας των objects στο admin. Χρησιμοποιώντας την ίδια μέθοδο άντλησης του user από το request, οι μέθοδοι get_queryset()
και has_change_permission()
μπορούν να χρησιμοποιηθούν προκειμένου να ελέγξετε την προβολή ή όχι καθώς και την δυνατότητα επεξεργασίας των objects στο admin.
Τα αρχεία CSS και οι εικόνες δουλεύουν στο admin-site μου χρησιμοποιώντας τον development server, αλλά όχι όταν χρησιμοποιώ το mod_wsgi.¶
Δείτε στο εξυπηρετώντας τα αρχεία του admin μέσα στο εγχειρίδιο «Πως να χρησιμοποιήσω το Django με το mod_wsgi».
Η επιλογή «list_filter» περιέχει ένα πεδίο τύπου ManyToManyField, αλλά το φίλτρο δεν εμφανίζεται.¶
Django won’t bother displaying the filter for a ManyToManyField
if there
are no related objects.
For example, if your list_filter
includes sites, and there are no sites in your
database, it won’t display a «Site» filter. In that case, filtering by site
would be meaningless.
Μερικά objects δεν εμφανίζονται στο admin.¶
Inconsistent row counts may be caused by missing foreign key values or a
foreign key field incorrectly set to null=False
. If you have a record with a
ForeignKey
pointing to a nonexistent object and
that foreign key is included is
list_display
, the record will not be
shown in the admin changelist because the Django model is declaring an
integrity constraint that is not implemented at the database level.
Πως μπορώ να παραμετροποιήσω τη λειτουργία του admin interface;¶
Έχετε πολλές επιλογές. Αν θέλετε να ενεργήσετε πάνω στη φόρμα προσθήκη/αλλαγή που το Django δημιουργεί αυτόματα, μπορείτε να εφαρμόσετε δικά σας JavaScript modules στη σελίδα, μέσω της παραμέτρου js parameter της κλάσης Admin του μοντέλου. Αυτή η παράμετρος είναι στην ουσία μια λίστα με URLs, σαν strings, τα οποία δείχνουν σε JavaScript modules τα οποία θα συμπεριληφθούν στην φόρμα του admin μέσω του tag <script>
.
If you want more flexibility than is feasible by tweaking the auto-generated forms, feel free to write custom views for the admin. The admin is powered by Django itself, and you can write custom views that hook into the authentication system, check permissions and do whatever else they need to do.
Αν θέλετε να αλλάξετε την εμφάνιση του, διαβάστε την επόμενη ερώτηση.
Το δυναμικά παραγόμενο admin site είναι άσχημο! Πως μπορώ να το αλλάξω;¶
Μας αρέσει, αλλά αν διαφωνείτε, μπορείτε να αλλάξετε την εμφάνιση του επεξεργάζοντας τα αρχεία CSS και/ή τις εικόνες. Το site χτίστηκε χρησιμοποιώντας semantic HTML και πολλά CSS hooks κάτι το οποίο σημαίνει ότι όποιες αλλαγές θελήσετε να κάνετε δεν έχετε παρά να επεξεργαστείτε τα αρχεία CSS.
Ποιους browsers υποστηρίζει το admin;¶
The admin provides a fully-functional experience to the recent versions of modern, web standards compliant browsers. On desktop this means Chrome, Edge, Firefox, Opera, Safari, and others.
On mobile and tablet devices, the admin provides a responsive experience for web standards compliant browsers. This includes the major browsers on both Android and iOS.
Depending on feature support, there may be minor stylistic differences between browsers. These are considered acceptable variations in rendering.
What assistive technologies are supported for using the admin?¶
The admin is intended to be compatible with a wide range of assistive technologies, but there are currently many blockers. The support target is all latest versions of major assistive technologies, including Dragon, JAWS, NVDA, Orca, TalkBack, Voice Control, VoiceOver iOS, VoiceOver macOS, Windows Contrast Themes, ZoomText, and screen magnifiers.