praktikum Aufgabe7

This commit is contained in:
Nadege
2019-11-26 15:19:44 +01:00
parent dcb4c6c41e
commit dd08dc74f6
7 changed files with 70 additions and 10 deletions
+16
View File
@@ -0,0 +1,16 @@
from django import forms
import datetime
class NoticeForm(forms.Form):
date_formats = ['%d.%m.%Y', '%d.%m.%y']
title = forms.CharField(label='Titel', max_length=80)
text = forms.CharField(label='Text', max_length=400)
start = forms.DateField(label='Von',
input_formats=date_formats,
initial=datetime.date.today)
end = forms.DateField(label='Bis',
input_formats=date_formats,
initial=datetime.date.today)
+11
View File
@@ -0,0 +1,11 @@
{% extends "base.html" %}
{% block content %}
<h1>Neue Nachricht</h1>
<form method="POST">
{% csrf_token %}
{{ form.as_p }}
<button type="submit" class="save btn btn-default">Speichern</button>
</form>
{% endblock %}
+10 -6
View File
@@ -3,14 +3,18 @@
<h2>Seite Infos</h2>
{% for notice in allnotice %}
<div class="notice">
<h3>{{ notice.notice_title }}</h3>
<h3>{{ notice.notice_text |linebreaks }}</h3>
</div>
{% empty %}
<div class="card w-100">
<div class="card-body">
{% for notice in allnotice %}
<h5 class="card-title">{{ notice.notice_title }}</h5>
<p class="card-text">{{ notice.notice_text |linebreaks }}</p>
<p><a href="{% url 'delete' deleteId=notice.id%}" class="btn btn-danger">Nachricht Löschen</a></p>
{% endfor %}
<p><a href="{% url 'new' %}" class="btn btn-info" role="button">Neue Nachricht</a></p>
</div>
</div>
{% endblock %}
+4 -1
View File
@@ -1,3 +1,4 @@
from django.conf.urls import url
from django.urls import path
from posts import views
@@ -5,5 +6,7 @@ urlpatterns = [
path('notice', views.index, name='index'),
path('welcome', views.welcome_seite),
path('home', views.welcome_seite),
path('about', views.about_seite)
path('about', views.about_seite),
url(r'^new', views.new, name='new'),
path('delete/<int:deleteId>', views.delete, name ='delete')
]
+26 -2
View File
@@ -1,5 +1,8 @@
from django.shortcuts import render
from django.http import HttpResponse
from django.shortcuts import render, redirect
from django.utils import timezone
from posts.forms import NoticeForm
from posts.models import Notice
# Create your views here.
@@ -13,4 +16,25 @@ def welcome_seite(request):
return render(request, 'posts/index.html')
def about_seite(request):
return render(request, 'posts/about.html')
return render(request, 'posts/about.html')
def new(request):
if request.method == "POST":
form = NoticeForm(request.POST)
if form.is_valid():
newNotice = Notice(notice_title=form.cleaned_data['title'],
notice_text=form.cleaned_data['text'],
pub_start=form.cleaned_data['start'],
pub_end=form.cleaned_data['end'])
newNotice.save()
return redirect('index')
context = {'form': NoticeForm()}
return render(request, 'posts/edit.html', context)
def delete(request, deleteId = None):
if deleteId != None:
delNotice = Notice.objects.get(id=deleteId)
if delNotice != None:
delNotice.delete()
return redirect('index')