Browse Source

praktikum Sieben bearbeitung

master
Amad Colovic 5 years ago
parent
commit
5376f0e654
8 changed files with 94 additions and 38 deletions
  1. 1
    1
      news/settings.py
  2. 6
    0
      news/urls.py
  3. 13
    0
      posts/forms.py
  4. 3
    1
      posts/urls.py
  5. 24
    3
      posts/views.py
  6. 3
    1
      templates/base.html
  7. 26
    0
      templates/posts/edit.html
  8. 18
    32
      templates/posts/index.html

+ 1
- 1
news/settings.py View File

# Internationalization # Internationalization
# https://docs.djangoproject.com/en/2.2/topics/i18n/ # https://docs.djangoproject.com/en/2.2/topics/i18n/


LANGUAGE_CODE = 'en-us'
LANGUAGE_CODE = 'de-de'


TIME_ZONE = 'UTC' TIME_ZONE = 'UTC'



+ 6
- 0
news/urls.py View File

from django.contrib import admin from django.contrib import admin
from django.urls import path, include from django.urls import path, include






urlpatterns = [ urlpatterns = [
path('posts/', include('posts.urls')), path('posts/', include('posts.urls')),
path('admin/', admin.site.urls), path('admin/', admin.site.urls),


] ]





+ 13
- 0
posts/forms.py View File

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)

+ 3
- 1
posts/urls.py View File

from . import views from . import views


urlpatterns = [ urlpatterns = [
path('', views.index, name='index')
path('', views.index, name='index'),
path('new', views.new, name='new'),
path('delete/<int:deleteId>', views.delete, name='delete'),
] ]

+ 24
- 3
posts/views.py View File

from django.shortcuts import render
from django.shortcuts import render, redirect
from .models import Notice from .models import Notice
from django.utils import timezone from django.utils import timezone
from .forms import NoticeForm




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 index (request):

def index(request):
notices = Notice.objects.all() notices = Notice.objects.all()
notices = notices.filter(pub_start__lte=timezone.now()) notices = notices.filter(pub_start__lte=timezone.now())
notices = notices.filter(pub_end__gte=timezone.now()) notices = notices.filter(pub_end__gte=timezone.now())
context = { "notices" : notices }
context = {"notices": notices}
return render(request, 'posts/index.html', context) return render(request, 'posts/index.html', context)


def delete(request, deleteId=None):
if deleteId !=None:
delNotice = Notice.objects.get(id=deleteId)
if delNotice != None:
delNotice.delete()
return redirect('index')


+ 3
- 1
templates/base.html View File

{% block navigation %} Platzhalter {% endblock %} {% block navigation %} Platzhalter {% endblock %}
{% block content %} Platzhalter {% endblock %} {% block content %} Platzhalter {% endblock %}
</body> </body>
</html>
</html>



+ 26
- 0
templates/posts/edit.html View File

{% extends 'base.html' %}


{% block title %}
News
{% endblock %}


{% block content %}

<div class="container">

<h1>Neue Nachricht</h1>
<form method="POST">
{% csrf_token %}
{{ form.as_p }}
<button type="submit" class="save btn btn-default">Speichern</button>
</form>
</div>



{% endblock %}




+ 18
- 32
templates/posts/index.html View File

{% for notice in notices %} {% for notice in notices %}
<h3>{{ notice.notice_title }}</h3> <h3>{{ notice.notice_title }}</h3>
<p>{{ notice.notice_text }}</p> <p>{{ notice.notice_text }}</p>
{% endfor %}

<p><a href="{% url 'new' %}" class="btn btn-info" role="button">Neue Nachricht</a></p>




<p><a href="{% url 'delete' deleteId=notice.id %}" class="btn btn-danger">
Meldung loeschen</a></p>
{% endfor %}





</div> </div>


{% endblock %}




<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Navbar Example</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css">
</head>
<body>

<h4>.navbar .navbar-expand-sm</h4>

<!-- A horizontal navbar that becomes vertical on small screens -->
<nav class="navbar navbar-expand-sm bg-dark">
<!-- Links -->
<ul class="navbar-nav">
<li class="nav-item">
<a class="nav-link" href="http://th-nuernberg.de">efi-homepage</a>
</li>
<li class="nav-item">
<a class="nav-link" href="http://google.de">Google</a>
</li>
</ul>
</nav>

<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script>
</body>
</html>
<h1> Index der Polls-Applikation</h1>




{% endblock %}


Loading…
Cancel
Save