# Τεκμηρίωση του Django - 3.2.11.dev

# Συχνές Ερωτήσεις: Το 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 δεν θα εμφανίσει το φίλτρο για πεδία τύπου `ManyToManyField` αν υπάρχουν λιγότερα από δύο συσχετισμένα objects.

Για παράδειγμα, αν η επιλογή `list_filter` περιέχει τα sites και υπάρχει μόνο ένα site στη βάση δεδομένων σας, το φίλτρο «Ιστότοποι» δεν θα εμφανιστεί. Δεν έχει νόημα να φιλτράρετε κάτι αν υπάρχει μόνο ένα αποτέλεσμα!

## Μερικά 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.