event timeline
This commit is contained in:
commit
fc1a929428
53 changed files with 806 additions and 0 deletions
0
app/event/__init__.py
Normal file
0
app/event/__init__.py
Normal file
14
app/event/admin.py
Normal file
14
app/event/admin.py
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
from django.contrib import admin
|
||||
|
||||
from . import models
|
||||
|
||||
@admin.decorators.register(models.Event)
|
||||
class EventAdmin(admin.ModelAdmin):
|
||||
list_display = (
|
||||
'title',
|
||||
'position',
|
||||
'date',
|
||||
'type',
|
||||
)
|
||||
list_editable = ['position', 'date']
|
||||
|
||||
6
app/event/apps.py
Normal file
6
app/event/apps.py
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
from django.apps import AppConfig
|
||||
|
||||
|
||||
class EventConfig(AppConfig):
|
||||
default_auto_field = 'django.db.models.BigAutoField'
|
||||
name = 'app.event'
|
||||
27
app/event/migrations/0001_initial.py
Normal file
27
app/event/migrations/0001_initial.py
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
# Generated by Django 3.2.9 on 2021-11-12 14:19
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
initial = True
|
||||
|
||||
dependencies = [
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='Event',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('created', models.DateTimeField(auto_now_add=True)),
|
||||
('modified', models.DateTimeField(auto_now=True)),
|
||||
('slug', models.SlugField(blank=True, unique=True)),
|
||||
('title', models.TextField(blank=True)),
|
||||
('body', models.TextField(blank=True, null=True)),
|
||||
('date', models.TextField(blank=True, null=True)),
|
||||
('data', models.JSONField(blank=True, default=dict)),
|
||||
],
|
||||
),
|
||||
]
|
||||
18
app/event/migrations/0002_event_type.py
Normal file
18
app/event/migrations/0002_event_type.py
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
# Generated by Django 3.2.9 on 2021-11-12 14:24
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('event', '0001_initial'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='event',
|
||||
name='type',
|
||||
field=models.TextField(blank=True, default=''),
|
||||
),
|
||||
]
|
||||
33
app/event/migrations/0003_auto_20211112_1503.py
Normal file
33
app/event/migrations/0003_auto_20211112_1503.py
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
# Generated by Django 3.2.9 on 2021-11-12 15:03
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('event', '0002_event_type'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='event',
|
||||
name='position',
|
||||
field=models.IntegerField(default=0),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='event',
|
||||
name='data',
|
||||
field=models.JSONField(blank=True, default=dict, editable=False),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='event',
|
||||
name='date',
|
||||
field=models.CharField(blank=True, max_length=1024, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='event',
|
||||
name='type',
|
||||
field=models.CharField(blank=True, default='', max_length=1024),
|
||||
),
|
||||
]
|
||||
17
app/event/migrations/0004_alter_event_options.py
Normal file
17
app/event/migrations/0004_alter_event_options.py
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
# Generated by Django 3.2.9 on 2021-11-12 15:07
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('event', '0003_auto_20211112_1503'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterModelOptions(
|
||||
name='event',
|
||||
options={'ordering': ('position',)},
|
||||
),
|
||||
]
|
||||
0
app/event/migrations/__init__.py
Normal file
0
app/event/migrations/__init__.py
Normal file
26
app/event/models.py
Normal file
26
app/event/models.py
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
from django.db import models
|
||||
import ox
|
||||
|
||||
class Event(models.Model):
|
||||
|
||||
class Meta:
|
||||
ordering = ('position', )
|
||||
|
||||
created = models.DateTimeField(auto_now_add=True)
|
||||
modified = models.DateTimeField(auto_now=True)
|
||||
|
||||
slug = models.SlugField(blank=True, unique=True)
|
||||
|
||||
position = models.IntegerField(default=0)
|
||||
title = models.TextField(blank=True)
|
||||
type = models.CharField(blank=True, default='', max_length=1024)
|
||||
date = models.CharField(blank=True, null=True, max_length=1024)
|
||||
body = models.TextField(blank=True, null=True)
|
||||
|
||||
data = models.JSONField(default=dict, blank=True, editable=False)
|
||||
|
||||
def __str__(self):
|
||||
return '%s (%s)' % (ox.strip_tags(self.title), self.slug)
|
||||
|
||||
def get_absolute_url(self):
|
||||
return '/#' + self.slug
|
||||
3
app/event/tests.py
Normal file
3
app/event/tests.py
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
from django.test import TestCase
|
||||
|
||||
# Create your tests here.
|
||||
13
app/event/views.py
Normal file
13
app/event/views.py
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
from django.shortcuts import render
|
||||
|
||||
|
||||
from .models import Event
|
||||
from ..page.models import Page
|
||||
|
||||
|
||||
def index(request, slug=''):
|
||||
context = {}
|
||||
context['events'] = Event.objects.all().order_by('position')
|
||||
context['postscript'] = Page.objects.get(slug='postscript')
|
||||
context['intro'] = Page.objects.get(slug='intro')
|
||||
return render(request, 'index.html', context)
|
||||
Loading…
Add table
Add a link
Reference in a new issue