RitehWebTeam / django-thesis

0 stars 0 forks source link

Refactor views.py #3

Open askoki opened 3 years ago

askoki commented 3 years ago

Views.py se sastoji od 800 linija koda i to je dosta teško za pratiti. Prvo je potrebno sve konstante prebaciti (kao i kod modela) u zasebnu datoteku. Te konstante ukoliko su neke poruke treba i internacijonalizirati (https://docs.djangoproject.com/en/3.1/topics/i18n/translation/), pisati u kodu na eng jeziku, a napraviti prijevode za hrvatski sa sljedećim komandama:

Poslije toga bi se trebalo riješiti ugniježdenih if elsova i probat ih zamijeniti sa jednostavnijom sintaksom Primjer:

try:
    student = Student.objects.get(user=request.user)
except Student.DoesNotExist:
    student = None

if(student):
    # some code
else:
    return render(request, 'error.html')

Ovo se može zapisati jednostavnije:

try:
    student = Student.objects.get(user=request.user)
except Student.DoesNotExist:
    return render(request, 'error.html')

# some code if student exists

Svu 'pametnu' logiku maknuti iz view.py u utils.py kao funkcije i pozivati onda te funkcije u view.py

Sve navedeno bi trebalo dosta smanjiti trenutni kod.

AntonFrlan commented 3 years ago

Datoteke s konstantama

administration:

bachelor_master_administration: