Skip to content
Snippets Groups Projects
Unverified Commit 106787b1 authored by Todd Dembrey's avatar Todd Dembrey Committed by GitHub
Browse files

Merge pull request #15 from OpenTechFund/feature/104-update-news-model

Feature/104 update news model
parents 72c70bf6 2b792d63
No related branches found
No related tags found
No related merge requests found
# -*- coding: utf-8 -*-
# Generated by Django 1.11.8 on 2018-01-08 12:05
from __future__ import unicode_literals
from django.db import migrations, models
import django.db.models.deletion
import modelcluster.fields
class Migration(migrations.Migration):
dependencies = [
('wagtailcore', '0040_page_draft_title'),
('news', '0002_add_header_image'),
]
operations = [
migrations.CreateModel(
name='NewsPageAuthor',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('sort_order', models.IntegerField(blank=True, editable=False, null=True)),
('author', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='wagtailcore.Page')),
('source_page', modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='authors', to='news.NewsPage')),
],
options={
'ordering': ['sort_order'],
'abstract': False,
},
),
]
...@@ -5,9 +5,13 @@ from django.core.paginator import EmptyPage, PageNotAnInteger, Paginator ...@@ -5,9 +5,13 @@ from django.core.paginator import EmptyPage, PageNotAnInteger, Paginator
from modelcluster.fields import ParentalKey from modelcluster.fields import ParentalKey
from wagtail.wagtailcore.models import Orderable
from wagtail.wagtailcore.fields import StreamField from wagtail.wagtailcore.fields import StreamField
from wagtail.wagtailadmin.edit_handlers import ( from wagtail.wagtailadmin.edit_handlers import (
StreamFieldPanel, FieldPanel, InlinePanel InlinePanel,
FieldPanel,
PageChooserPanel,
StreamFieldPanel,
) )
from wagtail.wagtailsearch import index from wagtail.wagtailsearch import index
...@@ -48,6 +52,24 @@ class NewsPageRelatedPage(RelatedPage): ...@@ -48,6 +52,24 @@ class NewsPageRelatedPage(RelatedPage):
) )
class NewsPageAuthor(Orderable):
source_page = ParentalKey(
'news.NewsPage',
related_name='authors'
)
author = models.ForeignKey(
'wagtailcore.Page',
null=True,
blank=True,
on_delete=models.SET_NULL,
related_name='+',
)
panels = [
PageChooserPanel('author', 'people.PersonPage')
]
class NewsPage(BasePage): class NewsPage(BasePage):
subpage_types = [] subpage_types = []
parent_page_types = ['NewsIndex'] parent_page_types = ['NewsIndex']
...@@ -68,6 +90,7 @@ class NewsPage(BasePage): ...@@ -68,6 +90,7 @@ class NewsPage(BasePage):
content_panels = BasePage.content_panels + [ content_panels = BasePage.content_panels + [
FieldPanel('publication_date'), FieldPanel('publication_date'),
InlinePanel('authors', label="Authors"),
FieldPanel('introduction'), FieldPanel('introduction'),
StreamFieldPanel('body'), StreamFieldPanel('body'),
InlinePanel('news_types', label="News types"), InlinePanel('news_types', label="News types"),
......
...@@ -5,6 +5,11 @@ ...@@ -5,6 +5,11 @@
<div class="wrapper wrapper--small"> <div class="wrapper wrapper--small">
<h1>{{ page.title }}</h1> <h1>{{ page.title }}</h1>
{% for author in page.authors.all %}
<p><a href="{% pageurl author.author %}">{{ author.author }}</a><p>
{% endfor %}
<p>{{ page.introduction }}</p> <p>{{ page.introduction }}</p>
<section class="main-body"> <section class="main-body">
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment