Εγχειρίδιο Django¶
Όλα όσα χρειάζεται να ξέρετε για το Django.
Μέρη για βοήθεια¶
Έχετε κάποιο πρόβλημα; Θα χαρούμε να σας βοηθήσουμε!
- Δοκιμάστε το άρθρο Συχνές ερωτήσεις (FAQ) – έχει τις απαντήσεις στις πιο συνηθισμένες ερωτήσεις.
- Μήπως ψάχνετε κάτι συγκεκριμένο; Δείτε στα Ευρετήριο, στο Ευρετήριο μονάδων ή στον αναλυτικό πίνακα περιεχομένων.
- Μπορείτε να ψάξετε για πληροφορίες στα αρχεία του mailing list των django-users ή να ρωτήσετε εκεί.
- Κάνετε την ερώτησή σας στο IRC κανάλι #django.
- Αναφέρετε τυχόν bugs του Django στον ticket tracker.
Πως είναι δομημένο το documentation¶
Το Django έχει πολύ documentation. Μια επισκόπηση της οργάνωσης του θα σας βοηθήσει να γνωρίζετε πού να ψάξετε για κάτι συγκεκριμένο:
- Οι οδηγοί (tutorials) μας θα σας οδηγήσουν βήμα-βήμα στη δημιουργία μιας Web εφαρμογής (Web application). Ξεκινήστε από εκεί εάν είστε καινούργιοι στο Django ή στο Web application development. Επίσης ρίξτε μια ματιά στα «Πρώτα βήματα» πιο κάτω.
- Το άρθρο χρησιμοποιώντας το Django συζητά επιγραμματικά για βασικά θέματα και έννοιες και παρέχει χρήσιμες πληροφορίες και τεκμηριώσεις.
- Οι οδηγοί αναφορών περιέχουν τεχνικές αναφορές για τα API και άλλες πτυχές του μηχανισμού του Django. Περιγράφουν πώς λειτουργεί και πώς να το χρησιμοποιήσετε αλλά προϋποθέτει ότι έχετε γνώση βασικών θεμάτων σχετικά με το Django.
- Οι οδηγοί how-to είναι συνταγές. Σας καθοδηγούν μέσα από βήματα για την επίλυση κοινών προβλημάτων. Είναι πιο προχωρημένα από τα tutorials και προϋποθέτουν ότι έχετε γνώση του τρόπου λειτουργίας του Django.
Πρώτα βήματα¶
Είστε καινούργιος στο Django ή στον προγραμματισμό; Αυτό είναι το κατάλληλο μέρος για να αρχίσετε!
- Από την αρχή: Επισκόπηση | Εγκατάσταση
- Οδηγοί: Μέρος 1: Requests και responses | Μέρος 2: Μοντέλα και το site διαχείρισης | Μέρος 3: Τα views και τα templates | Μέρος 4: Φόρμες και τα generic views | Μέρος 5: Τεστ | Μέρος 6: Στατικά αρχεία | Μέρος 7: Παραμετροποιώντας το site διαχείρισης
- Οδηγοί για προχωρημένους: Πως να γράψετε επαναχρησιμοποιήσιμα apps | Γράφοντας το πρώτο σας patch για το Django
Το επίπεδο του μοντέλου (model layer)¶
Το Django παρέχει ένα αφηρημένο layer (τα μοντέλα – «models») για τη δόμηση και το χειρισμό των δεδομένων της Web εφαρμογής σας. Μάθετε περισσότερα παρακάτω:
- Μοντέλα: Εισαγωγή στα μοντέλα | Τύποι πεδίων | Ευρετήρια (indexes) | Επιλογές Meta | Η κλάση Model
- QuerySets: Making queries | QuerySet method reference | Lookup expressions
- Model instances: Μέθοδοι του instance | Τρόποι πρόσβασης σε συσχετισμένα objects
- Migrations: Εισαγωγή στα migrations | Λειτουργίες των migrations | SchemaEditor | Γράφοντας migrations
- Για προχωρημένους: Managers | Raw SQL | Transactions | Aggregation | Εύρεση | Προσαρμοσμένα πεδία (fields) μοντέλων | Πολλαπλές βάσεις δεδομένων | Προσαρμοσμένα lookups | Query Expressions | Conditional Expressions | Συναρτήσεις βάσης δεδομένων
- Διάφορα: Υποστηριζόμενες βάσεις δεδομένων | Απαρχαιωμένες βάσεις δεδομένων | Παρέχοντας αρχικές τιμές στα μοντέλα σας | Βελτιστοποίηση πρόσβασης στη βάση δεδομένων | Συγκεκριμένα features για την PostgreSQL
Το επίπεδο του view¶
Το Django έχει την έννοια των «views» για να αναπαραστήσει τη λογική η οποία είναι υπεύθυνη για την επεξεργασία του request του χρήστη και της επιστροφής ενός response. Βρείτε όλα όσα θα θέλατε να μάθετε για τα views παρακάτω:
- The basics: URLconfs | View functions | Shortcuts | Decorators
- Αναφορά: Built-in Views | Request/response objects | TemplateResponse objects
- Ανέβασμα αρχείων: Επισκόπηση | File objects | Storage API | Διαχειρίζοντας τα αρχεία | Προσαρμοσμένο storage
- Class-based views: Επισκόπηση | Built-in views για εμφάνιση | Built-in views για επεξεργασία | Χρησιμοποιώντας mixins | Αναφορά του API | Flattened index
- Για προχωρημένους: Δημιουργώντας CSV | Δημιουργώντας PDF
- Middleware: Επισκόπηση | Built-in middleware classes
Το επίπεδο template¶
Το επίπεδο template παρέχει ένα φιλικό προς τον designer συντακτικό για να γίνει render η πληροφορία που παρουσιάζεται στον χρήστη. Μάθετε πως αυτό το συντακτικό μπορεί να χρησιμοποιηθεί από τους designers και πως μπορεί να επεκταθεί από τους προγραμματιστές:
- Τα βασικά: Επισκόπηση
- Για τους designers: Επισκόπηση της γλώσσας | Built-in tags και φίλτρα (filters) | Humanization
- Για τους προγραμματιστές: Template API | Προσαρμοσμένα tags και φίλτρα (filters)
Φόρμες¶
Το Django παρέχει ένα πλούσιο framework για να σας διευκολύνει με την δημιουργία των φορμών και τον χειρισμό των δεδομένων των φορμών (form data).
- Τα βασικά: Επισκόπηση | Form API | Built-in πεδία (fields) | Built-in widgets
- Για προχωρημένους: Φόρμες για μοντέλα | Ενσωματώνοντας αρχεία πολυμέσων | Formsets | Προσαρμοσμένo validation
Η διαδικασία της ανάπτυξης (development proccess)¶
Μάθετε για τα διάφορα components και εργαλεία του Django προκειμένου να σας βοηθήσουν στην ανάπτυξη και στο testing της εφαρμογής σας:
- Ρυθμίσεις: Επισκόπηση | Πλήρης λίστα με τις ρυθμίσεις
- Εφαρμογές: Επισκόπηση
- Exceptions: Επισκόπηση
- django-admin και manage.py: Επισκόπηση | Προσθέτοντας δικές σας διαχειριστικές εντολές
- Τεστ: Εισαγωγή | Γράφοντας και τρέχοντας τα τεστ | Συμπεριλαμβανόμενα εργαλεία για τεστ | Θέματα για προχωρημένους
- Deployment: Επισκόπηση | WSGI servers | Production server και static files | Αναφορά σφάλματος μέσω email
Το site διαχείρισης¶
Βρείτε όλα όσα θα θέλατε να μάθετε σχετικά με το αυτοματοποιημένο διαχειριστικό site του Django, ένα από τα πιο δημοφιλή features του Django:
Ασφάλεια¶
Η ασφάλεια είναι ένα θέμα υψίστης σημασίας στην ανάπτυξη των Web εφαρμογών. Το Django παρέχει πολλαπλά προστατευτικά εργαλεία και μηχανισμούς:
Internationalization και localization¶
Το Django προσφέρει ένα ισχυρό και σταθερό framework όσον αφορά το internationalization και το localization προκειμένου να σας βοηθήσει στην ανάπτυξη εφαρμογών σε πολλές γλώσσες και περιοχές ανά τον κόσμο:
Απόδοση και βελτιστοποίηση¶
Υπάρχουν πολλές τεχνικές και εργαλεία που μπορούν να σας βοηθήσουν στο να κάνετε τον κώδικα σας πιο αποτελεσματικό και γρήγορο, χρησιμοποιώντας λιγότερους πόρους από το σύστημα σας.
Γεωγραφικό framework¶
Το GeoDjango σκοπεύει να γίνει ένα παγκόσμιο γεωγραφικό (geographic) Web framework. Ο στόχος του είναι να κάνει όσο το δυνατόν πιο εύκολη τη συγγραφή GIS Web εφαρμογών και να εκμεταλλευτεί τη δύναμη των χωρικά ενεργοποιημένων δεδομένων (spatially enabled data).
Κοινά εργαλεία web application¶
Το Django προσφέρει πολλά εργαλεία τα οποία χρησιμοποιούνται συχνά στην ανάπτυξη Web εφαρμογών:
- Authentication: Επισκόπηση | Χρησιμοποιώντας το σύστημα authentication | Διαχείριση password | Παραμετροποιώντας το authentication | API Reference
- Caching
- Logging
- Αποστολή emails
- Syndication feeds (RSS/Atom)
- Σελιδοποίηση (pagination)
- Messages framework
- Serialization
- Sessions
- Sitemaps
- Διαχείριση των στατικών αρχείων
- Data validation
Άλλες κύριες λειτουργίες¶
Μάθετε για άλλες κύριες λειτουργίες του Django framework:
Το ανοιχτού κώδικα project Django¶
Μάθετε για τη διαδικασία ανάπτυξης του Django project και το πώς μπορείτε να συνεισφέρετε:
- Κοινότητα: Πώς να συμμετάσχετε | Η διαδικασία της κυκλοφορίας εκδόσεων | Οργάνωση ομάδων | Το repository του πηγαίου κώδικα του Django | Πολιτικές ασφαλείας | Mailing lists
- Φιλοσοφίες σχεδιασμού κώδικα: Επισκόπηση
- Documentation: Σχετικά με αυτό το εγχειρίδιο
- Διανομές του Django από τρίτους: Επισκόπηση
- Το Django μέσα στο πέρασμα του χρόνου: Σταθερότητα του API | Release notes και συμβουλές αναβάθμισης | Χρονοδιάγραμμα των deprecations