[[oktatas:web:back-end_framework:django|< Django]] ====== Django webes keretrendszer ====== * **Szerző:** Sallai András * Copyright (c) 2024, Sallai András * Licenc: [[https://creativecommons.org/licenses/by-sa/4.0/|CC BY-SA 4.0]] * Web: https://szit.hu ===== Projekt létrehozása ===== django-admin startproject app01 ===== Amit kapunk ===== app01/ manage.py mysite/ __init__.py settings.py urls.py asgi.py wsgi.py * manage.py - Parancssoros eszköz a Django projekthez. * mysite/__init__.py - Üres fájl, ami jelzi, hogy a könyvtárat Python csomagnak kell tekinteni. * mysite/settings.py - A Django projekt beállításai. * mysite/urls.py - URL deklarációk a projekt számára. * mysite/asgi.py - Az ASGI kompatibilis webszerverek számára belépési pont. * mysite/wsgi.py - A WSGI kompatibilis webszerverek számára belépési pont. ===== Fejlesztői szerver ===== python manage.py runserver A böngészőben nézzük meg a működést: * http://127.0.0.1:8000/ Port beállítása: python manage.py runserver 8080 ===== Szavazó alkalmazás ===== A projekt és az alkalmazás nem ugyanaz. Az alkalmazás például egy webhely, amely csinál valamit. A projekt több konfigurációt és alkalmazást tartalmazhat. python manage.py startapp polls A következő könyvtárszerkezet jön létre: polls/ __init__.py admin.py apps.py migrations/ __init__.py models.py tests.py views.py Nézet létrehozásához, nyissuk mega polls/views.py fájlt, és töltsük mega a következő tartalommal: from django.shortcuts import render from django.http import HttpResponse # Create your views here. def index(request): return HttpResponse('Helló világ') Hozzunk létre a polls könyvtárban egy urls.py fájlt, a következő tartalommal: from django.urls import path from . import views urlpatterns = [ path("", views.index, name="index"), ] Az útvonalat jegyezzük be az app01/urls.py fájlba is. from django.contrib import admin from django.urls import path, include urlpatterns = [ path('polls', include('polls.urls')), path('admin/', admin.site.urls), ] Indítsuk el a fejlesztői szervert ha az nem fut, majd a böngészőbe: * http://localhost:8000/polls ===== Link ===== * https://docs.djangoproject.com/en/5.0/intro/tutorial01/ (2024)