- Leren door doen
- Trainers met praktijkervaring
- Klassikale trainingen
- Gedetailleerd cursusmateriaal
- Duidelijke inhoudsbeschrijving
- Maatwerk inhoud mogelijk
- Trainingen die doorgaan
- Kleine groepen
De cursus Django Web Development is bedoeld voor developers die dit Framework willen gebruiken voor het maken van Web Applicaties in Python.
Om aan deze cursus te kunnen deelnemen is kennis van Web applicaties en kennis en ervaring met programmeren in Python vereist.
De stof wordt behandeld op basis van presentatie slides. Demos worden gebruikt om de theorie te verduidelijken. Tijdens de cursus is er ruime gelegenheid tot oefenen. De cursustijden zijn van 9.30 tot 16.30.
De deelnemers krijgen na het goed doorlopen van de training een officieel certificaat Django Web Development.
In de cursus Django Web Development leren de deelnemers dit Web Applicatie Framework te gebruiken voor het ontwikkelen van Python Web Applicaties. Eerst wordt een overzicht gegeven van de architectuur van het framework, hoe het kan worden geinstalleerd en hoe de de Admin applicatie kan worden gebruikt.
Vervolgens wordt ingegaan op het MVT pattern en hoe Models worden gemapped op de database. Hierbij komen de verschillende Field types en de data access API aan de orde. Ook Views en URL's passeren de revu waarbij ingegaan wordt op het gebruik van reguliere expressies bij het mappen naar views. Vervolgens wordt het gebruik van templates bij de opbouw van views aan de orde gesteld.
Daarna is het de beurt aan de creatie van Forms voor het opvangen van de input van de gebruiker. Ook wordt aandacht besteed aan de validatie van Forms en het gebruik van de zogeheten ModelForms die afgeleid zijn van Model classes. Vervolgens wordt uitgebreid ingegaan op Object Relational Mapping en de performance optimalisatie bij het benaderen van de database.
Tenslotte staan een aantal geavanceerde onderwepen op het programma zoals authenticatie, het werken met de REST Services en Unit Testing. Tegen het einde van de cursus hebben de deelnemers een complete Applicatie gebouwd die voorzien is van een REST interface.
Module 1 : Django Intro |
Module 2 : Django Models |
Module 3 : Views and URL's |
What is Django? Django History Framework Features Python CGI Script MVC Design Pattern Creating Projects Project Settings Project URL’s Running Project Testing Project Admin Application Setup Databases Activate Admin Site |
Mapping Models Create Application Create Models Migrations SQL for Models Three Step Migration Practice Data Access API String Representation Fields Creating and Accessing Objects Enabling Admin Interface Customize Admin Form Adding Related Objects |
View Basics URL Mapping Django MVT Pattern URL Arguments URL Utility Functions Non-Named Group Matching Named Groups View Functions Mapping to Views HTTP Request Object HTTP Response Object redirect Shortcut get_object_or_404 |
Module 4 : Django Templates |
Module 5 : Django Forms |
Module 6 : Django Security |
The Template System Template Variables render_to_repsonse Shortcut render Shortcut Context Variable Lookup List in Template Template Tags If and For Tag Filters Template Inheritance Child Templates Autoescape Loading Templates Class Based Views Specialized Views |
Form Objects Using Form in View Processing Form Data Display Form using Template Display using Paragraphs Display using Table Validating Forms Customize Form Template Rendering Error Messages Looping over Form Fields Rendering Forms Core Fields Argument ModelForms Model and Form Customize Model Forms |
Web Security Essentials Bad Practices Web Security Security Features Cross Site Scripting XSS Protection Cross Site Request Forgery CSRF Protection Clickjacking Protection SQL Injection Protection Cookies and Files Email Header Injection Django Authentication Authenticating Users Permissions and Authorization Authentication in Web Requests |
Module 7 : Django REST |
Module 8 : Advanced Topics |
|
What is REST? REST Services REST Examples Resource URI’s REST challenges Django Solutions Includes Installing DRF Core Components Django Counterparts Building our Demo API Customizing Resources |
Sessions Session Support Messages Framework Using Messages Sending Email Emitters Testing Unit Testing ORM advanced Aggregation and annotation Reporting/Data analysis application Database performance profiling Signals to denormalise |
Al onze cursussen zijn klassikale cursussen waarbij de cursisten aan de hand van een ervaren trainer met diepgaande materie kennis door de stof worden geleid. Theorie wordt steeds afgewisseld met oefeningen.
We doen ook maatwerk en passen dan de cursusinhoud aan op uw wensen. Op verzoek gaan we ook in op uw praktijkcases.
De cursustijden zijn in pricipe van 9.30 tot 16.30. Maar we zijn hierin flexibel. Soms moeten mensen namelijk kinderen naar de opvang brengen of halen en komen andere tijden hun beter uit. In goed overleg kunnen we dan andere cursustijden afspreken.
Wij zorgen voor de computers waarop de cursus gehouden kan worden. Op deze computer is de voor de cursus benodigde software al geinstalleerd. U hoeft geen laptop mee te nemen om aan de cursus te kunnen deelnemen. Als u liever op uw eigen laptop werkt kunt u hem desgewenst meenemen. De benodigde software wordt dan aan het begin van de cursus geinstalleerd.
Onze cursussen worden over het algemeen gegeven met Open Source software zoals Eclipse, IntelliJ, Tomcat, Pycharm, Anaconda en Netbeans. Het digitale cursusmateriaal krijgt u na de cursus mee naar huis.
De cursus is inclusief lunch die we in een restaurantje op loopafstand van het cursuslokaal gebruiken.
De cursussen worden op diverse plaatsen in het land gepland. Een cursus gaat op een locatie door als er zich minimaal 3 mensen voor die locatie inschrijven. Als er inschrijvingen voor verschillende locaties zijn gaat de cursus door op onze hoofdlocatie is Houten net onder Utrecht. Een cursus op onze hoofdlocatie gaat ook door bij 2 inschrijvingen en regelmatig ook bij 1 inschrijving. Overigens doen we ook cursussen op de locatie van de klant als men daar prijs op stelt.
De intellectuele eigendomsrechten van de gepubliceerde cursus inhoud, ook wel aangeduid als infosheet, behoren toe aan SpiralTrain. Het is niet toegestaan de cursusinformatie, de infosheet, te publiceren in schiftelijke dan wel digitale vorm zonder de uitdrukkelijke toestemming van SpiralTrain. Onder de cursus inhoud dient te worden verstaan de beschrijving van de cursus inhoud in zinnen alsmede de indeling van de cursus in modules en onderwerpen in de modules.