Browse Source

Dodělání formulářů

master
Vít Tlustý 4 years ago
parent
commit
20183be2e7
  1. 7
      .idea/dataSources.xml
  2. 4
      akce/models.py
  3. 27
      akce/views.py
  4. 14
      galerie/admin.py
  5. 16
      galerie/models.py
  6. 22
      galerie/views.py
  7. 2
      kinoostrov/static/kinoostrov/css/style.css
  8. 8
      kinoostrov/templates/kinoostrov/base.html
  9. 3
      kinoostrov/urls.py
  10. 21
      kolotoc/views.py

7
.idea/dataSources.xml

@ -15,5 +15,12 @@
<jdbc-url>jdbc:sqlite:$PROJECT_DIR$/db.sqlite3</jdbc-url> <jdbc-url>jdbc:sqlite:$PROJECT_DIR$/db.sqlite3</jdbc-url>
<working-dir>$ProjectFileDir$</working-dir> <working-dir>$ProjectFileDir$</working-dir>
</data-source> </data-source>
<data-source source="LOCAL" name="db.sqlite3 [2]" uuid="c43a17fd-ba61-40ac-82e8-17d1f564406f">
<driver-ref>sqlite.xerial</driver-ref>
<synchronize>true</synchronize>
<jdbc-driver>org.sqlite.JDBC</jdbc-driver>
<jdbc-url>jdbc:sqlite:$PROJECT_DIR$/db.sqlite3</jdbc-url>
<working-dir>$ProjectFileDir$</working-dir>
</data-source>
</component> </component>
</project> </project>

4
akce/models.py

@ -1,6 +1,6 @@
from django.db import models from django.db import models
# Create your models here.
class Akce(models.Model): class Akce(models.Model):
nazev= models.CharField(max_length=64,null=False, blank=False, verbose_name="Název") nazev= models.CharField(max_length=64,null=False, blank=False, verbose_name="Název")
popis= models.CharField(max_length=256,null=False, blank=False, verbose_name="Popis") popis= models.CharField(max_length=256,null=False, blank=False, verbose_name="Popis")
@ -8,5 +8,7 @@ class Akce(models.Model):
ofilmu= models.CharField(max_length=256,blank=False, verbose_name="O filmu") ofilmu= models.CharField(max_length=256,blank=False, verbose_name="O filmu")
rezie=models.CharField(max_length=32,null=False, blank=False, verbose_name="Režie") rezie=models.CharField(max_length=32,null=False, blank=False, verbose_name="Režie")
obrazek = models.ImageField(upload_to="akce", verbose_name="Obrázek") obrazek = models.ImageField(upload_to="akce", verbose_name="Obrázek")
def __str__(self):
return self.nazev

27
akce/views.py

@ -1,5 +1,7 @@
from django.shortcuts import render
from django.shortcuts import render, redirect
from django.urls import reverse
from akce.forms import Formular
from akce.models import Akce from akce.models import Akce
from kolotoc.models import Kolotoc from kolotoc.models import Kolotoc
from django.http import HttpResponse from django.http import HttpResponse
@ -8,9 +10,26 @@ from django.template import loader
def akce(request): def akce(request):
template = loader.get_template('akce/akce.html') template = loader.get_template('akce/akce.html')
dotazy = Akce.objects.all() dotazy = Akce.objects.all()
print(dotazy)
content = {
context = {
"dotazy": dotazy, "dotazy": dotazy,
} }
return HttpResponse(template.render(content, request))
return HttpResponse(template.render(context, request))
def form(request):
if request.method == "POST":
form = Formular(request.POST,request.FILES)
if form.is_valid():
form.save()
return redirect(reverse('index'))
else:
form = Formular()
context = {
"form": form,
}
return render(request, "akce/formular_akce.html",context)

14
galerie/admin.py

@ -1,3 +1,15 @@
from django.contrib import admin from django.contrib import admin
# Register your models here.
from galerie.models import Album, Foto
class FotoInline(admin.TabularInline):
model = Foto
@admin.register(Album)
class AlbumAdmin(admin.ModelAdmin):
inlines = [FotoInline]

16
galerie/models.py

@ -1,3 +1,17 @@
from django.db import models from django.db import models
# Create your models here.
class Album (models.Model):
nazev = models.CharField(max_length=64, null=False, blank=False, verbose_name="Název alba")
datum= models.DateTimeField(auto_now_add=True, blank=True,)
obrazek = models.ImageField(upload_to="album", verbose_name="Obrázek")
def __str__(self):
return self.nazev
class Foto(models.Model):
album = models.ForeignKey(Album,on_delete=models.CASCADE)
popisek = models.CharField(max_length=64, null=False, blank=False, verbose_name="Popisek")
autor = models.CharField(max_length=64, null=False, blank=False, verbose_name="Autor Fotky")
obrazek = models.ImageField(upload_to="album", verbose_name="Obrázek")

22
galerie/views.py

@ -1,3 +1,23 @@
from django.http import HttpResponse
from django.shortcuts import render from django.shortcuts import render
from django.template import loader
# Create your views here. # Create your views here.
from galerie.models import Album, Foto
def galerie(request):
dotazy=Album.objects.all()
context={
"dotazy":dotazy,
}
return render(request,"galerie/galerie.html",context)
def alba(request, message_id: int):
item = Album.objects.get(id=message_id)
context={
"item":item,
}
return render(request,"galerie/alba.html",context)

2
kinoostrov/static/kinoostrov/css/style.css

@ -13,4 +13,4 @@ footer {
justify-content: center; justify-content: center;
padding: 5px; padding: 5px;
}
}

8
kinoostrov/templates/kinoostrov/base.html

@ -38,10 +38,10 @@
<nav class="navbar navbar-light "> <nav class="navbar navbar-light ">
<div class="container-fluid"> <div class="container-fluid">
<a href="{% url "akce" %}"><h3><b>Letní kino</b></h3></a> <a href="{% url "akce" %}"><h3><b>Letní kino</b></h3></a>
<a href="#"><h3><b>Filmový festival</b></h3></a>
<a href="#"><h3><b>Filmový klub</b></h3></a>
<a href="{% url "formular_kolotoc" %}"><h3><b>Filmový festival</b></h3></a>
<a href="{% url "formular_akce" %}"><h3><b>Filmový klub</b></h3></a>
<a href="#"><h3><b>Akce</b></h3></a> <a href="#"><h3><b>Akce</b></h3></a>
<a href="#"><h3><b>Galerie</b></h3></a>
<a href="{% url "galerie" %}"><h3><b>Galerie</b></h3></a>
<a href="#"><h3><b>ELBE DOCK 2020</b></h3></a> <a href="#"><h3><b>ELBE DOCK 2020</b></h3></a>
<a href="#"><h3><b>Kontakt</b></h3></a> <a href="#"><h3><b>Kontakt</b></h3></a>
</div> </div>
@ -51,7 +51,7 @@
zatim zadny obsah... zatim zadny obsah...
{% endblock %} {% endblock %}
<footer> <footer>
<p>© Kinoostrov</p>
<p>© Vít Tlustý 3.IM</p>
</footer> </footer>
</div> </div>
<script src="{%static "kinoostrov/js/bootstrap.js" %}"> <script src="{%static "kinoostrov/js/bootstrap.js" %}">

3
kinoostrov/urls.py

@ -22,6 +22,9 @@ from django.conf.urls.static import static
urlpatterns = [ urlpatterns = [
path('admin/', admin.site.urls), path('admin/', admin.site.urls),
path('akce/', include('akce.urls')), path('akce/', include('akce.urls')),
path('galerie/', include('galerie.urls')),
path('kolotoc/', include('kolotoc.urls')),
path("",views.index, name="index"), path("",views.index, name="index"),
]+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) ]+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

21
kolotoc/views.py

@ -1,3 +1,22 @@
from django.shortcuts import render
from django.shortcuts import render, redirect
# Create your views here. # Create your views here.
from django.urls import reverse
from kolotoc.forms import Formular
def formular(request):
if request.method == "POST":
form = Formular(request.POST,request.FILES)
if form.is_valid():
form.save()
return redirect(reverse('index'))
else:
form = Formular()
context = {
"form": form,
}
return render(request,"kolotoc/formular.html",context)

Loading…
Cancel
Save