From f0946c1887e6166d0f368f62e387755371732fb0 Mon Sep 17 00:00:00 2001 From: makram89 Date: Tue, 11 Jan 2022 16:24:53 +0100 Subject: [PATCH 1/2] dzango init+ --- .gitignore | 1 + Serwer_django/OpenRefineAuth/__init__.py | 0 Serwer_django/OpenRefineAuth/admin.py | 3 +++ Serwer_django/OpenRefineAuth/apps.py | 6 ++++++ .../OpenRefineAuth/migrations/__init__.py | 0 Serwer_django/OpenRefineAuth/models.py | 3 +++ Serwer_django/OpenRefineAuth/tests.py | 3 +++ Serwer_django/OpenRefineAuth/views.py | 3 +++ Serwer_django/Serwer_django/settings.py | 3 ++- Serwer_django/Serwer_django/urls.py | 1 + Serwer_django/db.sqlite3 | Bin 0 -> 131072 bytes 11 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 .gitignore create mode 100644 Serwer_django/OpenRefineAuth/__init__.py create mode 100644 Serwer_django/OpenRefineAuth/admin.py create mode 100644 Serwer_django/OpenRefineAuth/apps.py create mode 100644 Serwer_django/OpenRefineAuth/migrations/__init__.py create mode 100644 Serwer_django/OpenRefineAuth/models.py create mode 100644 Serwer_django/OpenRefineAuth/tests.py create mode 100644 Serwer_django/OpenRefineAuth/views.py diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000..a952aef68 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/Serwer_django/.idea/* diff --git a/Serwer_django/OpenRefineAuth/__init__.py b/Serwer_django/OpenRefineAuth/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/Serwer_django/OpenRefineAuth/admin.py b/Serwer_django/OpenRefineAuth/admin.py new file mode 100644 index 000000000..8c38f3f3d --- /dev/null +++ b/Serwer_django/OpenRefineAuth/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/Serwer_django/OpenRefineAuth/apps.py b/Serwer_django/OpenRefineAuth/apps.py new file mode 100644 index 000000000..539a6085c --- /dev/null +++ b/Serwer_django/OpenRefineAuth/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class OpenrefineauthConfig(AppConfig): + default_auto_field = 'django.db.models.BigAutoField' + name = 'OpenRefineAuth' diff --git a/Serwer_django/OpenRefineAuth/migrations/__init__.py b/Serwer_django/OpenRefineAuth/migrations/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/Serwer_django/OpenRefineAuth/models.py b/Serwer_django/OpenRefineAuth/models.py new file mode 100644 index 000000000..71a836239 --- /dev/null +++ b/Serwer_django/OpenRefineAuth/models.py @@ -0,0 +1,3 @@ +from django.db import models + +# Create your models here. diff --git a/Serwer_django/OpenRefineAuth/tests.py b/Serwer_django/OpenRefineAuth/tests.py new file mode 100644 index 000000000..7ce503c2d --- /dev/null +++ b/Serwer_django/OpenRefineAuth/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/Serwer_django/OpenRefineAuth/views.py b/Serwer_django/OpenRefineAuth/views.py new file mode 100644 index 000000000..91ea44a21 --- /dev/null +++ b/Serwer_django/OpenRefineAuth/views.py @@ -0,0 +1,3 @@ +from django.shortcuts import render + +# Create your views here. diff --git a/Serwer_django/Serwer_django/settings.py b/Serwer_django/Serwer_django/settings.py index 507bef497..23f0ea088 100644 --- a/Serwer_django/Serwer_django/settings.py +++ b/Serwer_django/Serwer_django/settings.py @@ -25,7 +25,7 @@ SECRET_KEY = 'django-insecure-t52#vo-k9ty*$@u9bf75hrkd#^o_)gadrz9$7w%xnkb-0#y!bi # SECURITY WARNING: don't run with debug turned on in production! DEBUG = True -ALLOWED_HOSTS = [] +ALLOWED_HOSTS = ["localhost", "127.0.0.1"] # Application definition @@ -37,6 +37,7 @@ INSTALLED_APPS = [ 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', + 'OpenRefineAuth.apps.OpenrefineauthConfig' ] MIDDLEWARE = [ diff --git a/Serwer_django/Serwer_django/urls.py b/Serwer_django/Serwer_django/urls.py index f4fcd4d0c..a2720ad2e 100644 --- a/Serwer_django/Serwer_django/urls.py +++ b/Serwer_django/Serwer_django/urls.py @@ -15,6 +15,7 @@ Including another URLconf """ from django.contrib import admin from django.urls import path +from OpenRefineAuth import views urlpatterns = [ path('admin/', admin.site.urls), diff --git a/Serwer_django/db.sqlite3 b/Serwer_django/db.sqlite3 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..2fe5cbffd4d08db676eed70fac8397cad769850a 100644 GIT binary patch literal 131072 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 literal 0 HcmV?d00001 From cb1e578f72e0200c8b112c445698e366bab5145d Mon Sep 17 00:00:00 2001 From: makram89 Date: Tue, 18 Jan 2022 17:44:28 +0100 Subject: [PATCH 2/2] wyswietlanie domyslnego widoku logowania + tresc --- Serwer_django/Serwer_django/settings.py | 13 ++++++++++--- Serwer_django/Serwer_django/urls.py | 7 ++++++- Serwer_django/db.sqlite3 | Bin 131072 -> 131072 bytes Serwer_django/static/images/logo.jpg | Bin 0 -> 50331 bytes Serwer_django/templates/base.html | 14 ++++++++++++++ Serwer_django/templates/home.html | 13 +++++++++++++ .../templates/registration/login.html | 15 +++++++++++++++ 7 files changed, 58 insertions(+), 4 deletions(-) create mode 100644 Serwer_django/static/images/logo.jpg create mode 100644 Serwer_django/templates/base.html create mode 100644 Serwer_django/templates/home.html create mode 100644 Serwer_django/templates/registration/login.html diff --git a/Serwer_django/Serwer_django/settings.py b/Serwer_django/Serwer_django/settings.py index 23f0ea088..2ac634867 100644 --- a/Serwer_django/Serwer_django/settings.py +++ b/Serwer_django/Serwer_django/settings.py @@ -11,10 +11,11 @@ https://docs.djangoproject.com/en/4.0/ref/settings/ """ from pathlib import Path +import os # Build paths inside the project like this: BASE_DIR / 'subdir'. BASE_DIR = Path(__file__).resolve().parent.parent - +STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles') # Quick-start development settings - unsuitable for production # See https://docs.djangoproject.com/en/4.0/howto/deployment/checklist/ @@ -117,9 +118,15 @@ USE_TZ = True # Static files (CSS, JavaScript, Images) # https://docs.djangoproject.com/en/4.0/howto/static-files/ -STATIC_URL = 'static/' - +STATIC_URL = '/static/' +STATICFILES_DIRS = ( + os.path.join(BASE_DIR, "static"), +) # Default primary key field type # https://docs.djangoproject.com/en/4.0/ref/settings/#default-auto-field DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField' + +LOGIN_REDIRECT_URL = '/' + + diff --git a/Serwer_django/Serwer_django/urls.py b/Serwer_django/Serwer_django/urls.py index a2720ad2e..11dd4f706 100644 --- a/Serwer_django/Serwer_django/urls.py +++ b/Serwer_django/Serwer_django/urls.py @@ -14,9 +14,14 @@ Including another URLconf 2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) """ from django.contrib import admin -from django.urls import path +from django.urls import path, include from OpenRefineAuth import views +from django.views.generic.base import TemplateView +from django.contrib.staticfiles.urls import staticfiles_urlpatterns urlpatterns = [ path('admin/', admin.site.urls), + path('accounts/', include('django.contrib.auth.urls')), + path('', TemplateView.as_view(template_name='home.html'), name='home'), ] +urlpatterns += staticfiles_urlpatterns() diff --git a/Serwer_django/db.sqlite3 b/Serwer_django/db.sqlite3 index 2fe5cbffd4d08db676eed70fac8397cad769850a..0327b569896fa97df7a172a32aa8b375a3e7e176 100644 GIT binary patch delta 289 zcmZo@;Am*zm>|ulK2gS*QGH{AojxPy=K1=m25gM{aSZ%%8yiFT>l@`6c^MjQ9XTa= zc{w>9c?*)VQ__s$i!&09OwCk`jSPT5#kio@JF3Xdu^`Cb(X1$?)Fmf4*Pu)#$HYIs zFf+wBH_6be$UHSYwZhjiEicF4w8GLW(6}f)&&Z(C$lb!J%+b@<$iT=**T7KM&_cn` z)XLbx%E&~|z}Q6B+{hAWS9*FSssaNGD?>9q0}FF=LrX3O1_nm{Zw&n3HVY=a;pgUL zmgI!!;oZzwz%IbVcY9;wWj-cG)s2mcjFSpDnE3AiRbJ(1RGHYQu&IGXp_%2vc9si_ TEDB8gkAO0_`5EOVI!XZm%ob36 delta 55 zcmV-70LcG2pQun>aK Nw$K3xAhQU7_zx8e6y^W` diff --git a/Serwer_django/static/images/logo.jpg b/Serwer_django/static/images/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c478da7a3b456779d9dffc33bd476b28e08c5c31 GIT binary patch literal 50331 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 a11YpI_#~O%d7zVqq5nkU{{`9ii|Rj#w3u4} literal 0 HcmV?d00001 diff --git a/Serwer_django/templates/base.html b/Serwer_django/templates/base.html new file mode 100644 index 000000000..18afe7862 --- /dev/null +++ b/Serwer_django/templates/base.html @@ -0,0 +1,14 @@ + + + + + + {% block title %}Django baseic login{% endblock %} + + +
+ {% block content %} + {% endblock %} +
+ + \ No newline at end of file diff --git a/Serwer_django/templates/home.html b/Serwer_django/templates/home.html new file mode 100644 index 000000000..d9494519b --- /dev/null +++ b/Serwer_django/templates/home.html @@ -0,0 +1,13 @@ + +{% extends 'base.html' %} + +{% block title %}Home{% endblock %} + +{% block content %} +{% if user.is_authenticated %} + Hi {{ user.username }}! +{% else %} +

You are not logged in

+ Log In +{% endif %} +{% endblock %} \ No newline at end of file diff --git a/Serwer_django/templates/registration/login.html b/Serwer_django/templates/registration/login.html new file mode 100644 index 000000000..de284f50c --- /dev/null +++ b/Serwer_django/templates/registration/login.html @@ -0,0 +1,15 @@ + +{% extends 'base.html' %} + +{% block title %}Login{% endblock %} + +{% block content %} +

Log In

+ {% load static %} + logo + + {% csrf_token %} + {{ form.as_p }} + + +{% endblock %} \ No newline at end of file