Django 5 : Install2026/05/26 |
|
Install Django which is Python Web Application Framework. |
|
| [1] | Install Django under the Python venv. It's possible to do for any common user. |
|
ubuntu@dlp:~$ python3 -m venv --system-site-packages ~/django5 ubuntu@dlp:~$ source ~/django5/bin/activate (django5) ubuntu@dlp:~$ pip3 install 'Django>=5,<6' Collecting Django<6,>=5 Downloading django-5.2.14-py3-none-any.whl.metadata (4.1 kB) Collecting asgiref>=3.8.1 (from Django<6,>=5) Downloading asgiref-3.11.1-py3-none-any.whl.metadata (9.3 kB) Collecting sqlparse>=0.3.1 (from Django<6,>=5) Downloading sqlparse-0.5.5-py3-none-any.whl.metadata (4.7 kB) Downloading django-5.2.14-py3-none-any.whl (8.3 MB) 8.3/8.3 MB 56.4 MB/s eta 0:00:00 Downloading asgiref-3.11.1-py3-none-any.whl (24 kB) Downloading sqlparse-0.5.5-py3-none-any.whl (46 kB) Installing collected packages: sqlparse, asgiref, Django Successfully installed Django-5.2.14 asgiref-3.11.1 sqlparse-0.5.5
(django) ubuntu@dlp:~$
django-admin --version 5.2.14 # to exit from venv, run like follows (django) ubuntu@dlp:~$ deactivate ubuntu@dlp:~$ |
| [2] | Create a test project. If UFW is running and also access to Django from other Hosts, Allow ports you plan to use with root privilege before it. (example below uses [8000/tcp]) |
|
ubuntu@dlp:~$
source ~/django5/bin/activate
# create testproject (django5) ubuntu@dlp:~$ django-admin startproject testproject (django5) ubuntu@dlp:~$ cd testproject # configure database (default is SQLite) (django5) ubuntu@dlp:~/testproject$ python manage.py migrate
# create admin user (django5) ubuntu@dlp:~/testproject$ python manage.py createsuperuser Username (leave blank to use 'ubuntu'): ubuntu Email address: ubuntu@dlp.srv.world Password: Password (again): Superuser created successfully.
(django5) ubuntu@dlp:~/testproject$
vi testproject/settings.py # line 28 : set if you allow to access to Django from other Hosts # specify Hosts with comma separated # if allow all, specify like follows ALLOWED_HOSTS = [ '*' ]
# start server (django5) ubuntu@dlp:~/testproject$ python manage.py runserver 0.0.0.0:8000 Watching for file changes with StatReloader Performing system checks... System check identified no issues (0 silenced). May 26, 2026 - 00:30:42 Django version 5.2.14, using settings 'testproject.settings' Starting development server at http://0.0.0.0:8000/ Quit the server with CONTROL-C. |
| [3] | Access to the [(server's hostname or IP address):8000/] from a client computer. It's OK if following site is displayed normally. |
|
| [4] | It's possible to use admin site on [(server's hostname or IP address):8000/admin]. |
|
|
| [5] | Create a test application to try to use Django. |
|
ubuntu@dlp:~$
source ~/django5/bin/activate
(django5) ubuntu@dlp:~$
(django5) ubuntu@dlp:~/testproject$ cd testproject python manage.py startapp test_app
(django5) ubuntu@dlp:~/testproject$
vi test_app/views.py # add to last line
from django.http import HttpResponse
def main(request):
html = '<html>\n' \
'<body>\n' \
'<h1 style="width: 100%; font-size: 40px; text-align: center;">\n' \
'Django Test Page\n' \
'</h1>\n' \
'</body>\n' \
'</html>\n'
return HttpResponse(html)
(django5) ubuntu@dlp:~/testproject$
vi testproject/urls.py # line 18, 22 : add like follows from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), path('test_app/', include('test_app.urls')), ]
(django5) ubuntu@dlp:~/testproject$
vi test_app/urls.py # create new
from django.urls import path
from .views import main
urlpatterns = [
path('', main, name='home')
]
(django5) ubuntu@dlp:~/testproject$
vi testproject/settings.py # line 33 : add test application in [INSTALLED_APPS] section
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'test_app',
)
(django5) ubuntu@dlp:~/testproject$ python manage.py runserver 0.0.0.0:8000 |
| [6] | Access to the [(server's hostname or IP address):8000/testapp/] from a client computer. It's OK if testapp is displayed normally. |
|
| Sponsored Link |
|
|