Primárně pro 3.I+3.IM - Django program se základním přihlašovacím systémem
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Jakub Škrabánek 27fa7b5f5b Merge branch 'master' of http://git.asgard.odbornaskola.cz/skrabanek/Django-login 4 years ago
.idea update 404 4 years ago
accounts update 404 4 years ago
loginproject update 404 4 years ago
templates update 404 4 years ago
.gitignore Initial commit 4 years ago
README.md update readme.md 4 years ago
manage.py Added result 4 years ago

README.md

Django-login

Primárně pro 3.I+3.IM - Django program se základním přihlašovacím systémem

založení projektu

Pokud používáme PyCharm přesuneme se na bod 3.

  1. Vytvoříme si virtální prostředí

python -m venv .venv

  1. Spustíme virtuální prostředí

.venv\Scripts\Activate.bat

  1. Naimportujeme si Django (.venv) nepíšeme

(.venv) pip install django

  1. Vytvoříme si projekt (nezapomeňte na konci TEČKU)

django-admin startproject loginproject .

  1. Migrujeme projekt

python manage.py migrate

  1. Spustíme server na vyzkoušení

python manage.py runserver

  1. V settings.py nalezneme si část TEMPLATES (řádek 54 v základu) a upravíme DIRS (řáděk 57 v základu)

'DIRS': [], >>>>>> 'DIRS': [BASE_DIR / "templates"],

  1. vytvoříme si složku templates a uvnitř složky templates vytvoříme složku registration
  2. ve složce registration vytvoříme soubor login.html (celá cesta je templates/registration/login.html)
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Login</title>
</head>
<body>
<h2>Login</h2>
<form method="post">
    {% csrf_token %}
    {{form.as_p}}
    <button type="submit"> Prihlasit</button>
</form>

</body>
</html>
  1. do settings.py přídáme na konec následující řádky
LOGIN_REDIRECT_URL = "/"
LOGOUT_REDIRECT_URL = "/"
  1. vytvoříme si super uživatele na testování

python manage.py createsuperuser

  1. po vytvoření super uživatele spustíme zase server

python manage.py runserver

  1. vytovříme si home.html ve složce templates
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h1>Login systém</h1>
{% if user.is_authenticated %}
    Ahoj, {{ user.username}}
{% else %}
<p>Nejsi přihlášený</p>
<a href="{% url 'login'%}">Prihlasit</a>
{% endif %}
</body>
</html>
  1. upravíme urls.py následovně:
from django.contrib import admin
from django.urls import path, include
from django.views.generic.base import TemplateView

urlpatterns = [
    path('admin/', admin.site.urls),
    path("ucet/", include("django.contrib.auth.urls")),
    path("",TemplateView.as_view(template_name="home.html"), name="home")
]