Django Уводни Водич: Брзо Направите Вашу Прву Веб Апликацију

2/19/2026
6 min read

Django Уводни Водич: Брзо Направите Вашу Прву Веб Апликацију

Django је напредни Python веб фрејмворк, са циљем брзог развоја и једноставног дизајна. Он прати модел-темплејт-поглед (MTV) архитектуру, подстиче поновну употребу кода и компонентализацију. Овај водич ће вас водити корак по корак кроз креирање једноставне Django апликације, како бисте брзо почели.

1. Подешавање Окружења

Прво, морате да се уверите да је Python инсталиран на вашем систему. Django препоручује коришћење Python 3.6 или новије верзије.

1.1 Инсталирање Python-а

Ако ваш систем нема инсталиран Python, можете га преузети и инсталирати са Python званичног сајта.

1.2 Креирање Виртуелног Окружења (Virtual Environment)

Да бисте изоловали зависности између различитих пројеката, топло се препоручује коришћење виртуелног окружења.

  1. Отворите терминал или командну линију.

  2. Креирајте директоријум пројекта, на пример myproject:

    mkdir myproject
    cd myproject
    
  3. Креирајте и активирајте виртуелно окружење:

    python3 -m venv venv  # Или python -m venv venv
    source venv/bin/activate  # Linux/macOS
    venv\Scripts\activate  # Windows
    

    Након активирања виртуелног окружења, ваш терминални промпт ће приказати (venv), што значи да користите виртуелно окружење.

1.3 Инсталирање Django-а

У активном виртуелном окружењу, користите pip за инсталирање Django-а:

pip install Django

Проверите да ли је инсталација била успешна:

python -m django --version

Требало би да видите број верзије Django-а.

2. Креирање Django Пројекта

Након инсталирања Django-а, можете креирати нови Django пројекат.

  1. И даље у вашем директоријуму пројекта (myproject), покрените следећу команду:

    django-admin startproject mysite
    

    Ово ће креирати директоријум под називом mysite у директоријуму myproject, који садржи скелетне датотеке Django пројекта.

  2. Уђите у mysite директоријум:

    cd mysite
    
  3. Структура директоријума Django пројекта је следећа:

    mysite/
        manage.py
        mysite/
            __init__.py
            settings.py
            urls.py
            asgi.py
            wsgi.py
    
    • manage.py: Алат командне линије за управљање Django пројектом.
    • mysite/: Python пакет који садржи конфигурацију пројекта.
      • __init__.py: Празна датотека која говори Python-у да овај директоријум треба да се третира као Python пакет.
      • settings.py: Конфигурациона датотека пројекта, на пример подешавања базе података, режим отклањања грешака итд.
      • urls.py: Конфигурација URL рутирања, мапира URL-ове на функције погледа.
      • asgi.py: ASGI (Asynchronous Server Gateway Interface) конфигурациона датотека, за распоређивање асинхроних апликација.
      • wsgi.py: WSGI (Web Server Gateway Interface) конфигурациона датотека, за распоређивање традиционалних синхроних апликација.

3. Pokretanje razvojnog servera

Django dolazi sa laganim razvojnim serverom, koji vam olakšava lokalni razvoj i testiranje.

  1. U direktorijumu mysite, pokrenite sledeću komandu:

    python manage.py runserver
    
  2. Otvorite vaš pretraživač i posetite http://127.0.0.1:8000/. Trebalo bi da vidite stranicu sa tekstom "It worked! Congratulations on your first Django-powered page.".

4. Kreiranje Django aplikacije

Jedan Django projekat može da sadrži više aplikacija. Hajde da kreiramo aplikaciju pod nazivom myapp.

  1. Otvorite novi terminalski prozor (ostavite razvojni server da radi).

  2. U direktorijumu mysite, pokrenite sledeću komandu:

    python manage.py startapp myapp
    

    Ovo će kreirati direktorijum pod nazivom myapp u direktorijumu mysite, koji sadrži kostur fajlova Django aplikacije.

  3. Struktura direktorijuma Django aplikacije je sledeća:

    myapp/
        __init__.py
        admin.py
        apps.py
        migrations/
            __init__.py
        models.py
        tests.py
        views.py
    
    • __init__.py: Prazan fajl koji govori Python-u da ovaj direktorijum treba da se tretira kao Python paket.
    • admin.py: Koristi se za konfigurisanje Django administratorskog panela.
    • apps.py: Konfiguracija aplikacije.
    • migrations/: Koristi se za upravljanje migracijama baze podataka.
    • models.py: Definiše modele podataka (tabele baze podataka).
    • tests.py: Pišite test primere.
    • views.py: Definiše funkcije pogleda, obrađuje zahteve i vraća odgovore.
  4. U mysite/settings.py, dodajte myapp u INSTALLED_APPS listu:

    INSTALLED_APPS = [
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        'myapp',  # Dodajte myapp
    ]
    

5. Kreiranje jednostavnog prikaza

Sada ćemo kreirati jednostavan prikaz koji prikazuje "Hello, Django!" u pretraživaču.

  1. Uredite myapp/views.py fajl i dodajte sledeći kod:

    from django.http import HttpResponse
    
    def index(request):
        return HttpResponse("Hello, Django!")
    
  2. Kreirajte myapp/urls.py fajl i mapirajte URL na funkciju prikaza:

   from django.urls import path
   from . import views

   urlpatterns = [
       path('', views.index, name='index'),
   ]
   ```

3.  Укључите `myapp/urls.py` у `mysite/urls.py`:

   ```python
   from django.urls import include, path
   from django.contrib import admin

   urlpatterns = [
       path('admin/', admin.site.urls),
       path('myapp/', include('myapp.urls')),  # Додајте URL конфигурацију за myapp
   ]
   ```

4.  Посетите `http://127.0.0.1:8000/myapp/`. Требало би да видите страницу са текстом "Hello, Django!".

## 6. Креирање модела

Хајде да креирамо једноставан модел за складиштење неких података.

1.  Измените `myapp/models.py` фајл и додајте следећи код:

   ```python
   from django.db import models

   class Question(models.Model):
       question_text = models.CharField(max_length=200)
       pub_date = models.DateTimeField('date published')

       def __str__(self):
           return self.question_text
   ```

   Ово дефинише модел под називом `Question`, који садржи два поља: `question_text` (CharField) и `pub_date` (DateTimeField).

2.  Креирајте и примените миграције базе података:

   ```bash
   python manage.py makemigrations myapp
   python manage.py migrate
   ```

   `makemigrations` команда ће креирати фајлове миграције на основу вашег модела, а `migrate` команда ће применити миграције на базу података.

## 7. Коришћење Django административног интерфејса

Django нуди моћан административни интерфејс који олакшава управљање вашим подацима.

1.  Креирајте супер корисника:

   ```bash
   python manage.py createsuperuser
   ```

   Пратите упутства да унесете корисничко име, е-пошту и лозинку.

2.  Измените `myapp/admin.py` фајл и региструјте `Question` модел:

   ```python
   from django.contrib import admin
   from .models import Question

   admin.site.register(Question)
   ```

3.  Посетите `http://127.0.0.1:8000/admin/`, и пријавите се са супер корисником којег сте креирали. Требало би да видите модул "Questions", где можете да додајете, уређујете и бришете питања.

## 8. Коришћење шаблона

Коришћење шаблона омогућава флексибилније генерисање HTML страница.
1. У директоријуму `myapp` креирајте директоријум под називом `templates`, а затим у директоријуму `templates` креирајте директоријум под називом `myapp` ( `myapp/templates/myapp` ).

2. У директоријуму `myapp/templates/myapp` креирајте датотеку под називом `index.html` и додајте следећи код:

   ```html
   

       
           Hello, Django!
       
       The current time is: {{ current_time }}
   
   ```

3. Уредите датотеку `myapp/views.py` и користите шаблон:

   ```python
   from django.shortcuts import render
   import datetime

   def index(request):
       now = datetime.datetime.now()
       return render(request, 'myapp/index.html', {'current_time': now})
   ```

   `render` функција учитава шаблон и прослеђује податке шаблону за рендеровање.

4. Поново посетите `http://127.0.0.1:8000/myapp/`. Требало би да видите страницу која садржи тренутно време.

## 9. Закључак

Кроз овај водич, научили сте основне концепте и методе коришћења Django-а, укључујући подешавање окружења, креирање пројеката и апликација, дефинисање модела, креирање приказа и коришћење шаблона. Ово је само почетак, Django нуди богате функционалности, можете наставити да учите и истражујете, градећи сложеније веб апликације.
Published in Technology

You Might Also Like