KREIRANJE DJANGO WEB APLIKACIJE- BAZA PODATAKA
Parametri baze podataka se podešavaju u okviru settings.py fajla aplikacije. Podrazumevana baza je SQLite baza, ali se može podesiti i neka druga za podrazumevanu bazu. Takođe se može koristitii više baza u okviru Django projekta i onda se to mora naznačiti u settings.py fajlu.
Da bi se podesila baza SQLite3 ili Postgresql u settings.py treba podesiti : |
Django aplikacija-Kreiranje baze-video |
DATABASES = {
'default': {
}
'ENGINE': 'django.db.backends.sqlite3',
'NAME': 'database.sql',
'USER': '',
'PASSWORD': '',
'HOST': '',
'PORT': '',
}'NAME': 'database.sql',
'USER': '',
'PASSWORD': '',
'HOST': '',
'PORT': '',
Ovo je podrazumevano podešavanje. Da bi baza bila postgreSQL, u okviru projekta logo_kreator treba podesiti:
DATABASES = {
'default': {
}
#'ENGINE': 'django.db.backends.sqlite3',
#'NAME': 'database.sql',
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'logo_kreator_baza',
'USER': 'postgres',
'PASSWORD': '*******',
'HOST': 'localhost',
'PORT': '5432',
}#'NAME': 'database.sql',
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'logo_kreator_baza',
'USER': 'postgres',
'PASSWORD': '*******',
'HOST': 'localhost',
'PORT': '5432',
Baza postgre se može instalirati koristeći installer za windows
https://www.enterprisedb.com/downloads/postgres-postgresql-downloads#windows
Posle instalacije treba proveriti da li su u okviru PATH unešene sledeće putanje:
C:\Program Files\PostgreSQL\12\bin i
C:\Program Files\PostgreSQL\12\lib
https://www.enterprisedb.com/downloads/postgres-postgresql-downloads#windows
Posle instalacije treba proveriti da li su u okviru PATH unešene sledeće putanje:
C:\Program Files\PostgreSQL\12\bin i
C:\Program Files\PostgreSQL\12\lib
Podešavanja za bazu koja se nalazi na “oblaku”(cloud engl.)
Baza koja je kreirana na nekoj web platform u “oblaku”(cloud-u) može se povezati u okviru settings.py i koristiti se i za razvijanje aplikacije na lokalnom računaru osim za razvijanje na heroku platform, gde se i podrazumeva da se koristi takva baza. S obzirom da se na heroku platformi podaci za bazu kreiraju automatski i da je podrazumevana baza postgreSQL, umesto gore kreiranih parametra, u aplikaciji logo_kreator, definisaćemo promenljive za povezivanje, koje ćemo sada inicijalizovati za bazu na localhost-u, a kasnije samo izmeniti za bazu koja je u oblaku, kao što se može videti u sledećem prikazu:
DATABASES = {
'default': {
}
_POSTGREDB_USER = 'postgres'
_POSTGREDB_PASSWD = '*****************'
_POSTGREDB_HOST = 'localhost'
_POSTGREDB_NAME = 'logo_kreator_baza'
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': _POSTGREDB_NAME,
'USER': _POSTGREDB_USER,
'PASSWORD': _POSTGREDB_PASSWD,
'HOST': _POSTGREDB_HOST,
'PORT': '5432',
}_POSTGREDB_PASSWD = '*****************'
_POSTGREDB_HOST = 'localhost'
_POSTGREDB_NAME = 'logo_kreator_baza'
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': _POSTGREDB_NAME,
'USER': _POSTGREDB_USER,
'PASSWORD': _POSTGREDB_PASSWD,
'HOST': _POSTGREDB_HOST,
'PORT': '5432',
Ukoliko bi sad startovali server u command prompt-u bi se prikazala sledeća greška:
Vidi se da konekcija sa bazom nije mogla da se uspostavi, jer baza nije ni kreirana. Dakle, sledeći korak je kreiranje baze. Posle instaliranja postgresql baze podataka, kreiranja korisnika za bazu i postavljanja šifre, dalje treba kreirati bazu za aplikaciju logo creator, koju ćemo nazvati 'logo_kreator_baza' što je već i definisano u settings.py.
Postgresql ima ugrađen interfejs za administraciju sa bazom, pageAdmin4, pa ćemo preko njega kreirati bazu i ažurirati tabele u bazi ukoliko to bude potrebno.
Pokrenimo sa start menija pgAdmin 4:
Postgresql ima ugrađen interfejs za administraciju sa bazom, pageAdmin4, pa ćemo preko njega kreirati bazu i ažurirati tabele u bazi ukoliko to bude potrebno.
Pokrenimo sa start menija pgAdmin 4:
Posle konektovanja na pgAdminServer treba kreirati novu bazu desnim klikom na databases a zatim klikom na dugme create, kao što se vidi na sledećoj slici:
Kada se kreira baza “logo_kreator_baza”, koja je prazna, nema još uvek ni jednu tabelu, može se startovati server aplikacije logo kreator na localhost-u i ovoga puta se neće prikazati greška.
Potrbno je naziv baze i korisnika, kao na sledećoj slici:
Potrbno je naziv baze i korisnika, kao na sledećoj slici:
Posle kreiranja baze:
Startovanje djangovog admin interfejsa
Za rad sa korisnicima koristimo djangov ugrađen interfejs. Potrebno je u settigs.py dodati sledeće module(aplikacije) u okviru INSTALLED_APPS and MIDDLEWARE_CLASSES:
Da bi startovali prvi put admin interfejs potrebno inicijalizovati bazu. Podrazumeva se da je prethodno u settings.py fajlu podešena baza kako je ranije opisano. Dakle, komanda:
python manage.py makemigrations
python manage.py migrate
python manage.py migrate
izvršiće prvo inicijalizovanje baze. Za ažuriranje nastalih promena u bazi treba istu komandu ponoviti.
Kreiranje superuser-a
Prvi korisnik u bazi je zapravo superuser. Da bi ga kreirali moramo otkucati sledeću komandu u okviru command prompt-a:
python manage.py createsuperuser
U toku kreiranja superusera potrebno je uneti korisničko ime(username), e-mail adresu i šifru(password).
Posle startovanja server i kucanja u polju za adrese web pretraživača: http://localhost:8000/admin/
prikazaće se strana za logovanje Djangovog admin interfejsa:
Posle startovanja server i kucanja u polju za adrese web pretraživača: http://localhost:8000/admin/
prikazaće se strana za logovanje Djangovog admin interfejsa:
Posle prijavljivanja prikazaće se admin deo sajta:
Ovde se može upravljati grupama i korisnicima al ii tabelama koje se budu definisale u modelu.
Super korisnik može da dodaje ili briše nove korisnike, dodeljuje im statuse aktivan, super korisnik ili može da odredi da li taj korisnik ili ne ima dozvolu za pristup admin delu sajta. Više o tome pogledajte u videu postavljenom na stranici.
Super korisnik može da dodaje ili briše nove korisnike, dodeljuje im statuse aktivan, super korisnik ili može da odredi da li taj korisnik ili ne ima dozvolu za pristup admin delu sajta. Više o tome pogledajte u videu postavljenom na stranici.
Prethodno
|< Logo Kreator - Kreiranje Naslovne strane |
Sledeće
Kreiranje aplikacije na Heroku Web Platformi >| |