logo_ulefr01








Je hebt nog geen geldig gebruiker voor deze site !

aub gebruik Profile - Registreer voor een nieuwe registratie !

aub gebruik Profile - Log in voor een bestaand gebruiker !


Django


Taak detail formulier

Taak aanpassen
Taak
00. Presentatie Django
Taaktekst

Django

Wat ?      compleet en open source raamwerk voor webapplicaties dmv Python MVT - MVC raamwerk  (Model-View-Controller)

Django is een professioneel raamwerk om internet applicaties mee te bouwen.
Zeker bij complexe applicaties zorgt Django er voor dat het relatief eenvoudig is om snel met resultaten te komen.
Het mooie is dat belangrijke basisfunctionaliteiten zoals bijvoorbeeld inloggen en registreren al in een app zitten en het eenvoudig wordt om uit te breiden naar uw wensen.

Django of Laravel: Welk framework is het beste in 2022 ? zie https://kinsta.com/nl/blog/django-of-laravel/#django-en-laravel-welk-framework-is-beter-voor-webdevelopment

Django heeft het MVT design structuur ! zie https://www.geeksforgeeks.org/django-project-mvt-structure/ 

2005 : World Online (krant VS)  ontwikkelaars Adrian Holovaty en  Willison Simon samen met ,Jacob Kaplan-Mosse, Wilson Miner
PHP gedumpt en Python werd gebruikt  voor ontwikkelen van websites ; succes met Lawrence.com  
open-source software Django  genoemd naar Django Reinhardt (in België geboren als Jean Reinhardt 1910-1953 een gipsy jazz muzikant)  daar Adrian Holovaty een Am muzikant van jazz , woont nu in Amsterdam... 

Django Reinhardt

sedert  1,5 jaar enorm succes ... ,  nu al aan versie 3.0 (april 3.1, dec 3.2 en eind 2021  4.0)
MVC raamwerk 
MVC (Model-View-Controller)
Wat is MVC?
MVC is een software-architectuur ontwerppatroon . Het verdeelt of scheidt uw app in drie delen:
Model: verantwoordelijk voor gegevensopslag en -beheer,
View = weergave: verantwoordelijk voor het weergeven en weergeven van de gebruikersinterface
Controller: verantwoordelijk voor de afhandeling van logica om de gebruikersinterface te besturen en met het datamodel te werken.

MVT structuur: 


model : waar we onze gegevens plaatsen : foto's , video's, titels, namen, beschrijvingen ... datums
view : hoe je website de gegevens krijgt van onze modellen en voor de gebruikers verwerkt.
template : de weergave van de gegevens op de website. Bestaande Tools HTML, CSS en Javascript

  • settings.py : instellingen voor uw Django project
  • urls.py
    • url voor de beheerder
    • url naar app1, app2, ...

standaard worden een aantal apps automatisch toegevoegd aan het Django Project

  • 'django.contrib.admin'
  • 'django.contrib.auth'
  • 'django.contrib.contenttypes'
  • 'django.contrib.sessions'
  • 'django.contrib.messages'
  • 'django.contrib.staticfiles'

het mooie is : een app is herbruikbaar , je kunt dezelfde app in meerdere projecten gebruiken
iedere app : admin.py, models.py, views.py en urls.py (meestal)

Django ORM

object-relational mapper 

Django Model : beschrijft je tabel van je database records (in models.py)

eenvoudige manipulatie van je gegevens zonder complexe SQL re moeten schrijven
In de meeste gevallen worden er relaties gelegd tussen je gegevens

een op een (OnetoOne) één op veel relatie (OnetoMany) ; veel op veel relatie (ManyToMany)

Django maakt automatisch je tabellen en indexen in je database

Django biedt 4 basisdatabasefuncties : Creëren, lezen, bijwerken en verwijderen

    CRUD : Create, Read, Update en Delete

Django API

    python API   .... application program interface : data in  XML formaat of JSON (Java Script Object Notation) formaat 

Django Shell

    python manage.py shell

Django admin

    automatisch gegenereerde admin functie

Django SQL database

    een eenvoudige database kan gebruikt worden :  SQLITE3.

    Alsook MySQL, MariaDB , PostgreSQL  Oracle, ...  kan gebruikt worden.

Django ondersteuning internationalizering  i18n en ondersteuning verschillende tijdzones

    webtoepassingen in andere talen : spellingscontrole in het Nederlands

    tijdzones : nul meridiaan van Greenwich = UTC

        wij : UTC + 1

paginering instellen voor lijst

    zie 20 postcodes per pagina ipv 50

django website

    django overzicht

django uitgebreide documentatie

    django documentatie 4.0

    in pdf formaat : doc in pdf formaat 

python

    python beschikt over  zeer uitgebreide pakketten , je moet hier het wiel niet terug uitvinden meestal zal je hier gebruik kunnen maken van reeds geschreven software

    voorbeeld : als de webcam van je laptop wilt gebruiken om qrcodes of streepjescode wilt scannen dan kun je bestaande speciale python pakketten hiervoor gebruiken !

    python taak

database

    standaard SQLITE3   documentatie : sqlite3 documentatie

    andere database : MySQL, PostgreSQL, ORACLE, SAP, IBM_DB2, ODBC

populaire websites dat django gebruiken

    meest populaire django websites

  • Instagram
  • Spotify
  • YouTube
  • The Washington Post
  • BitBucket
  • DropBox
  • Eventbrite
  • Mozilla
  • Pinterest
  • Open Stack
  • National Geographic
  • MacArthur Foundation
  • Open Knowledge Foundation
  • Prezi
  • NASA Official Website nasa
  • Quora
  • Disqus

widgets

    allerlei formulier widgets zijn mogelijk : 'TextInput', 'NumberInput', 'EmailInput', 'URLInput', 'PasswordInput', 'HiddenInput', 'MultipleHiddenInput', 'FileInput', 'ClearableFileInput', 'Textarea',     'DateInput', 'DateTimeInput', 'TimeInput', 'CheckboxInput', ...

kalender

    bij een datum veld , klik en er komt een maandkalender te voorschijn

    scrolbaar per dag, maand en jaar

html ckeditor

  • CKEditor is een online WYSIWYG (what you see is what you get) editor dat je kunt gebruiken in een webbrowser (Chrome, Firefox, Safari, Internet Explorer, ...)
  • het is open source
  • u kunt  tekst  opmaken en rich media-inhoud in realtime aan uw document kunt toevoegen met behulp van de editor UI (werkbalkknoppen, dialoogvensters), en het resultaat wordt direct zichtbaar. 
  • zoek en vervang functie, tabellen, ...., kan zelfs  de spelling nakijken voor de Nederlandse taal
  • bron in html code is zelfs zichtbaar
  • Als u op de knop Vet klikt, wordt de tekst vetgedrukt; 
  • wanneer u een afbeelding toevoegt, verschijnt deze meteen.
  • smiley 
  • werkt op html code

ckeditor

mijn django projecten

maak gebruik van een virtuele omgeving

    voordeel : onafhankelijk van nieuwere software

    verschillende tools voor een virtuele omgeving

  • pipenv 
  • virtualfish

starten django project

django-admin startproject naamproject

starten app binnen een django project

python manage.py startapp naamapp

createsuperuser

python manage.py createsuperuser

opzet Modellen

    models.py
    python manage.py makemigrations
    python manage.py migrate

starten django site

python manage.py runserver 
http://127.0.0.1:8000 toont het django raamwerk
http://127.0.0.1:8000/admin toont het django raamwerk in admin mode

http status codes

http status codes    

templates

django template language DTL

bootstrap 4.5.0 : zie bootstrap4 tutorial w3schools

    Voordelen van Bootstrap:    
    Eenvoudig in gebruik: iedereen met alleen basiskennis van HTML en CSS kan Bootstrap gaan gebruiken
    Responsieve functies: de CSS van Bootstrap past zich aan op smartphones, tablets en desktops
    Mobile benadering: in Bootstrap : stijlen maken deel uit van het kernraamwerk
    Browsercompatibiliteit: Bootstrap 4 is compatibel met alle moderne browsers (Chrome, Firefox, Internet Explorer 10+, Edge, Safari en Opera)    

nieuw bootstrap 5.0

 

Taak Wegdoen.
Commentaren van deze taak
  1. Commentaar aanpassen

    heel goede presentatie

    1 - 00. Presentatie Django - 1

    Commentaar wegdoen.

Lijst taken   Nieuwe Taak   Nieuwe Commentaar


Mijn Django Websites

in/uitklappen
Franz Ulenaers
Texelhoek, 5
B9870 Zulte, Belgiƫ
Tel: +32497/852752 Telefoneer mij!

<<< © Ulefr01 Soft Publishing 2022 >>>
Ga naar de top