From: Frédéric Péters Date: Sun, 29 Dec 2019 13:56:24 +0000 (+0100) Subject: add basic view of a note X-Git-Tag: v2022~57 X-Git-Url: https://git.0d.be/?p=chloro.git;a=commitdiff_plain;h=4cbde1d675d45b7fab19bc1ed6001829e03a6c2c add basic view of a note --- diff --git a/chloro/phyll/templates/phyll/base.html b/chloro/phyll/templates/phyll/base.html new file mode 100644 index 0000000..466fb4b --- /dev/null +++ b/chloro/phyll/templates/phyll/base.html @@ -0,0 +1,13 @@ + + + + + + Coin web de Frédéric Péters + + + + {% block body %} + {% endblock %} + + diff --git a/chloro/phyll/templates/phyll/note_detail.html b/chloro/phyll/templates/phyll/note_detail.html new file mode 100644 index 0000000..4abf3af --- /dev/null +++ b/chloro/phyll/templates/phyll/note_detail.html @@ -0,0 +1,8 @@ +{% extends "phyll/base.html" %} + +{% block body %} +

{{ object.title }}

+ +
{{ object.text|safe }}
+ +{% endblock %} diff --git a/chloro/phyll/urls.py b/chloro/phyll/urls.py new file mode 100644 index 0000000..e1ae6d1 --- /dev/null +++ b/chloro/phyll/urls.py @@ -0,0 +1,23 @@ +# chloro - personal space +# Copyright (C) 2019 Frederic Peters +# +# This program is free software: you can redistribute it and/or modify it +# under the terms of the GNU Affero General Public License as published +# by the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . + +from django.conf.urls import url + +from . import views + +urlpatterns = [ + url(r'^(?P[\w:-]+)/$', views.NoteView.as_view()), +] diff --git a/chloro/phyll/views.py b/chloro/phyll/views.py new file mode 100644 index 0000000..cb12807 --- /dev/null +++ b/chloro/phyll/views.py @@ -0,0 +1,23 @@ +# chloro - personal space +# Copyright (C) 2019 Frederic Peters +# +# This program is free software: you can redistribute it and/or modify it +# under the terms of the GNU Affero General Public License as published +# by the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . + +from django.views.generic import DetailView + +from .models import Note + + +class NoteView(DetailView): + model = Note diff --git a/chloro/settings.py b/chloro/settings.py index 2d8e8b6..4ee2cfe 100644 --- a/chloro/settings.py +++ b/chloro/settings.py @@ -106,9 +106,15 @@ USE_TZ = True # Static files (CSS, JavaScript, Images) # https://docs.djangoproject.com/en/1.11/howto/static-files/ - +STATIC_ROOT = os.path.join(BASE_DIR, 'collected-static') STATIC_URL = '/static/' + +# Media files +MEDIA_ROOT = os.path.join(BASE_DIR, 'media') +MEDIA_URL = '/media/' + + local_settings_file = os.environ.get( 'CHLORO_SETTINGS_FILE', os.path.join(os.path.dirname(__file__), 'local_settings.py') ) diff --git a/chloro/urls.py b/chloro/urls.py index b20867a..032add7 100644 --- a/chloro/urls.py +++ b/chloro/urls.py @@ -1,18 +1,28 @@ -"""chloro URL Configuration +# chloro - personal space +# Copyright (C) 2019 Frederic Peters +# +# This program is free software: you can redistribute it and/or modify it +# under the terms of the GNU Affero General Public License as published +# by the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . -The `urlpatterns` list routes URLs to views. For more information please see: - https://docs.djangoproject.com/en/1.11/topics/http/urls/ -Examples: -Function views - 1. Add an import: from my_app import views - 2. Add a URL to urlpatterns: url(r'^$', views.home, name='home') -Class-based views - 1. Add an import: from other_app.views import Home - 2. Add a URL to urlpatterns: url(r'^$', Home.as_view(), name='home') -Including another URLconf - 1. Import the include() function: from django.conf.urls import url, include - 2. Add a URL to urlpatterns: url(r'^blog/', include('blog.urls')) -""" -from django.conf.urls import url +from django.conf import settings +from django.conf.urls import include, url +from django.conf.urls.static import static +from django.contrib.staticfiles.urls import staticfiles_urlpatterns urlpatterns = [] + +# static and media files +urlpatterns += staticfiles_urlpatterns() +urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) + +urlpatterns.append(url(r'', include('chloro.phyll.urls')))