wagtail-bakerydemo/bakerydemo/locations/migrations/0001_initial.py

341 wiersze
14 KiB
Python

# -*- coding: utf-8 -*-
# Generated by Django 1.10.5 on 2017-03-15 07:16
from __future__ import unicode_literals
import django.core.validators
from django.db import migrations, models
import django.db.models.deletion
import modelcluster.fields
import wagtail.blocks
import wagtail.fields
import wagtail.embeds.blocks
import wagtail.images.blocks
class Migration(migrations.Migration):
initial = True
dependencies = [
("wagtailcore", "0032_add_bulk_delete_page_permission"),
("wagtailimages", "0018_remove_rendition_filter"),
]
operations = [
migrations.CreateModel(
name="LocationOperatingHours",
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),
),
(
"day",
models.CharField(
choices=[
("MON", "Monday"),
("TUES", "Tuesday"),
("WED", "Wednesday"),
("THUR", "Thursday"),
("FRI", "Friday"),
("SAT", "Saturday"),
("SUN", "Sunday"),
],
default="MON",
max_length=4,
),
),
("opening_time", models.TimeField(blank=True, null=True)),
("closing_time", models.TimeField(blank=True, null=True)),
(
"closed",
models.BooleanField(
help_text="Tick if location is closed on this day",
verbose_name="Closed?",
),
),
],
options={
"ordering": ["sort_order"],
"abstract": False,
},
),
migrations.CreateModel(
name="LocationPage",
fields=[
(
"page_ptr",
models.OneToOneField(
auto_created=True,
on_delete=django.db.models.deletion.CASCADE,
parent_link=True,
primary_key=True,
serialize=False,
to="wagtailcore.Page",
),
),
(
"introduction",
models.TextField(blank=True, help_text="Text to describe the page"),
),
(
"body",
wagtail.fields.StreamField(
(
(
"heading_block",
wagtail.blocks.StructBlock(
(
(
"heading_text",
wagtail.blocks.CharBlock(
classname="title", required=True
),
),
(
"size",
wagtail.blocks.ChoiceBlock(
blank=True,
choices=[
("", "Select a header size"),
("h2", "H2"),
("h3", "H3"),
("h4", "H4"),
],
required=False,
),
),
)
),
),
(
"paragraph_block",
wagtail.blocks.RichTextBlock(
icon="pilcrow",
template="blocks/paragraph_block.html",
),
),
(
"image_block",
wagtail.blocks.StructBlock(
(
(
"image",
wagtail.images.blocks.ImageChooserBlock(
required=True
),
),
(
"caption",
wagtail.blocks.CharBlock(required=False),
),
(
"attribution",
wagtail.blocks.CharBlock(required=False),
),
)
),
),
(
"block_quote",
wagtail.blocks.StructBlock(
(
("text", wagtail.blocks.TextBlock()),
(
"attribute_name",
wagtail.blocks.CharBlock(
blank=True,
label="e.g. Guy Picciotto",
required=False,
),
),
)
),
),
(
"embed_block",
wagtail.embeds.blocks.EmbedBlock(
help_text="Insert an embed URL e.g https://www.youtube.com/watch?v=SGJFWirQ3ks",
icon="media",
template="blocks/embed_block.html",
),
),
),
blank=True,
verbose_name="Page body",
),
),
("address", models.TextField()),
(
"lat_long",
models.CharField(
help_text="Comma separated lat/long. (Ex. 64.144367, -21.939182) Right click Google Maps and select 'What's Here'",
max_length=36,
validators=[
django.core.validators.RegexValidator(
code="invalid_lat_long",
message="Lat Long must be a comma-separated numeric lat and long",
regex="^(\\-?\\d+(\\.\\d+)?),\\s*(\\-?\\d+(\\.\\d+)?)$",
)
],
),
),
(
"image",
models.ForeignKey(
blank=True,
help_text="Landscape mode only; horizontal width between 1000px and 3000px.",
null=True,
on_delete=django.db.models.deletion.SET_NULL,
related_name="+",
to="wagtailimages.Image",
),
),
],
options={
"abstract": False,
},
bases=("wagtailcore.page", models.Model),
),
migrations.CreateModel(
name="LocationsIndexPage",
fields=[
(
"page_ptr",
models.OneToOneField(
auto_created=True,
on_delete=django.db.models.deletion.CASCADE,
parent_link=True,
primary_key=True,
serialize=False,
to="wagtailcore.Page",
),
),
(
"introduction",
models.TextField(blank=True, help_text="Text to describe the page"),
),
(
"body",
wagtail.fields.StreamField(
(
(
"heading_block",
wagtail.blocks.StructBlock(
(
(
"heading_text",
wagtail.blocks.CharBlock(
classname="title", required=True
),
),
(
"size",
wagtail.blocks.ChoiceBlock(
blank=True,
choices=[
("", "Select a header size"),
("h2", "H2"),
("h3", "H3"),
("h4", "H4"),
],
required=False,
),
),
)
),
),
(
"paragraph_block",
wagtail.blocks.RichTextBlock(
icon="pilcrow",
template="blocks/paragraph_block.html",
),
),
(
"image_block",
wagtail.blocks.StructBlock(
(
(
"image",
wagtail.images.blocks.ImageChooserBlock(
required=True
),
),
(
"caption",
wagtail.blocks.CharBlock(required=False),
),
(
"attribution",
wagtail.blocks.CharBlock(required=False),
),
)
),
),
(
"block_quote",
wagtail.blocks.StructBlock(
(
("text", wagtail.blocks.TextBlock()),
(
"attribute_name",
wagtail.blocks.CharBlock(
blank=True,
label="e.g. Guy Picciotto",
required=False,
),
),
)
),
),
(
"embed_block",
wagtail.embeds.blocks.EmbedBlock(
help_text="Insert an embed URL e.g https://www.youtube.com/watch?v=SGJFWirQ3ks",
icon="media",
template="blocks/embed_block.html",
),
),
),
blank=True,
verbose_name="Page body",
),
),
(
"image",
models.ForeignKey(
blank=True,
help_text="Landscape mode only; horizontal width between 1000px and 3000px.",
null=True,
on_delete=django.db.models.deletion.SET_NULL,
related_name="+",
to="wagtailimages.Image",
),
),
],
options={
"abstract": False,
},
bases=("wagtailcore.page", models.Model),
),
migrations.AddField(
model_name="locationoperatinghours",
name="location",
field=modelcluster.fields.ParentalKey(
on_delete=django.db.models.deletion.CASCADE,
related_name="hours_of_operation",
to="locations.LocationPage",
),
),
]