2
0

0001_initial.py 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349
  1. # -*- coding: utf-8 -*-
  2. # Generated by Django 1.10.5 on 2017-03-15 07:16
  3. from django.db import migrations, models
  4. import django.db.models.deletion
  5. import modelcluster.fields
  6. import wagtail.blocks
  7. import wagtail.fields
  8. import wagtail.embeds.blocks
  9. import wagtail.images.blocks
  10. class Migration(migrations.Migration):
  11. initial = True
  12. dependencies = [
  13. ("wagtailcore", "0032_add_bulk_delete_page_permission"),
  14. ("wagtailimages", "0018_remove_rendition_filter"),
  15. ]
  16. operations = [
  17. migrations.CreateModel(
  18. name="BreadIngredient",
  19. fields=[
  20. (
  21. "id",
  22. models.AutoField(
  23. auto_created=True,
  24. primary_key=True,
  25. serialize=False,
  26. verbose_name="ID",
  27. ),
  28. ),
  29. ("name", models.CharField(max_length=255)),
  30. ],
  31. options={
  32. "verbose_name_plural": "Bread ingredients",
  33. },
  34. ),
  35. migrations.CreateModel(
  36. name="BreadPage",
  37. fields=[
  38. (
  39. "page_ptr",
  40. models.OneToOneField(
  41. auto_created=True,
  42. on_delete=django.db.models.deletion.CASCADE,
  43. parent_link=True,
  44. primary_key=True,
  45. serialize=False,
  46. to="wagtailcore.Page",
  47. ),
  48. ),
  49. (
  50. "introduction",
  51. models.TextField(blank=True, help_text="Text to describe the page"),
  52. ),
  53. (
  54. "body",
  55. wagtail.fields.StreamField(
  56. (
  57. (
  58. "heading_block",
  59. wagtail.blocks.StructBlock(
  60. (
  61. (
  62. "heading_text",
  63. wagtail.blocks.CharBlock(
  64. classname="title", required=True
  65. ),
  66. ),
  67. (
  68. "size",
  69. wagtail.blocks.ChoiceBlock(
  70. blank=True,
  71. choices=[
  72. ("", "Select a header size"),
  73. ("h2", "H2"),
  74. ("h3", "H3"),
  75. ("h4", "H4"),
  76. ],
  77. required=False,
  78. ),
  79. ),
  80. )
  81. ),
  82. ),
  83. (
  84. "paragraph_block",
  85. wagtail.blocks.RichTextBlock(
  86. icon="pilcrow",
  87. template="blocks/paragraph_block.html",
  88. ),
  89. ),
  90. (
  91. "image_block",
  92. wagtail.blocks.StructBlock(
  93. (
  94. (
  95. "image",
  96. wagtail.images.blocks.ImageChooserBlock(
  97. required=True
  98. ),
  99. ),
  100. (
  101. "caption",
  102. wagtail.blocks.CharBlock(required=False),
  103. ),
  104. (
  105. "attribution",
  106. wagtail.blocks.CharBlock(required=False),
  107. ),
  108. )
  109. ),
  110. ),
  111. (
  112. "block_quote",
  113. wagtail.blocks.StructBlock(
  114. (
  115. ("text", wagtail.blocks.TextBlock()),
  116. (
  117. "attribute_name",
  118. wagtail.blocks.CharBlock(
  119. blank=True,
  120. label="e.g. Guy Picciotto",
  121. required=False,
  122. ),
  123. ),
  124. )
  125. ),
  126. ),
  127. (
  128. "embed_block",
  129. wagtail.embeds.blocks.EmbedBlock(
  130. help_text="Insert an embed URL e.g https://www.youtube.com/watch?v=SGJFWirQ3ks",
  131. icon="media",
  132. template="blocks/embed_block.html",
  133. ),
  134. ),
  135. ),
  136. blank=True,
  137. verbose_name="Page body",
  138. ),
  139. ),
  140. ],
  141. options={
  142. "abstract": False,
  143. },
  144. bases=("wagtailcore.page", models.Model),
  145. ),
  146. migrations.CreateModel(
  147. name="BreadsIndexPage",
  148. fields=[
  149. (
  150. "page_ptr",
  151. models.OneToOneField(
  152. auto_created=True,
  153. on_delete=django.db.models.deletion.CASCADE,
  154. parent_link=True,
  155. primary_key=True,
  156. serialize=False,
  157. to="wagtailcore.Page",
  158. ),
  159. ),
  160. (
  161. "introduction",
  162. models.TextField(blank=True, help_text="Text to describe the page"),
  163. ),
  164. (
  165. "body",
  166. wagtail.fields.StreamField(
  167. (
  168. (
  169. "heading_block",
  170. wagtail.blocks.StructBlock(
  171. (
  172. (
  173. "heading_text",
  174. wagtail.blocks.CharBlock(
  175. classname="title", required=True
  176. ),
  177. ),
  178. (
  179. "size",
  180. wagtail.blocks.ChoiceBlock(
  181. blank=True,
  182. choices=[
  183. ("", "Select a header size"),
  184. ("h2", "H2"),
  185. ("h3", "H3"),
  186. ("h4", "H4"),
  187. ],
  188. required=False,
  189. ),
  190. ),
  191. )
  192. ),
  193. ),
  194. (
  195. "paragraph_block",
  196. wagtail.blocks.RichTextBlock(
  197. icon="pilcrow",
  198. template="blocks/paragraph_block.html",
  199. ),
  200. ),
  201. (
  202. "image_block",
  203. wagtail.blocks.StructBlock(
  204. (
  205. (
  206. "image",
  207. wagtail.images.blocks.ImageChooserBlock(
  208. required=True
  209. ),
  210. ),
  211. (
  212. "caption",
  213. wagtail.blocks.CharBlock(required=False),
  214. ),
  215. (
  216. "attribution",
  217. wagtail.blocks.CharBlock(required=False),
  218. ),
  219. )
  220. ),
  221. ),
  222. (
  223. "block_quote",
  224. wagtail.blocks.StructBlock(
  225. (
  226. ("text", wagtail.blocks.TextBlock()),
  227. (
  228. "attribute_name",
  229. wagtail.blocks.CharBlock(
  230. blank=True,
  231. label="e.g. Guy Picciotto",
  232. required=False,
  233. ),
  234. ),
  235. )
  236. ),
  237. ),
  238. (
  239. "embed_block",
  240. wagtail.embeds.blocks.EmbedBlock(
  241. help_text="Insert an embed URL e.g https://www.youtube.com/watch?v=SGJFWirQ3ks",
  242. icon="media",
  243. template="blocks/embed_block.html",
  244. ),
  245. ),
  246. ),
  247. blank=True,
  248. verbose_name="Page body",
  249. ),
  250. ),
  251. (
  252. "image",
  253. models.ForeignKey(
  254. blank=True,
  255. help_text="Landscape mode only; horizontal width between 1000px and 3000px.",
  256. null=True,
  257. on_delete=django.db.models.deletion.SET_NULL,
  258. related_name="+",
  259. to="wagtailimages.Image",
  260. ),
  261. ),
  262. ],
  263. options={
  264. "abstract": False,
  265. },
  266. bases=("wagtailcore.page", models.Model),
  267. ),
  268. migrations.CreateModel(
  269. name="BreadType",
  270. fields=[
  271. (
  272. "id",
  273. models.AutoField(
  274. auto_created=True,
  275. primary_key=True,
  276. serialize=False,
  277. verbose_name="ID",
  278. ),
  279. ),
  280. ("title", models.CharField(max_length=255)),
  281. ],
  282. options={
  283. "verbose_name_plural": "Bread types",
  284. },
  285. ),
  286. migrations.CreateModel(
  287. name="Country",
  288. fields=[
  289. (
  290. "id",
  291. models.AutoField(
  292. auto_created=True,
  293. primary_key=True,
  294. serialize=False,
  295. verbose_name="ID",
  296. ),
  297. ),
  298. ("title", models.CharField(max_length=100)),
  299. ],
  300. options={
  301. "verbose_name_plural": "Countries of Origin",
  302. },
  303. ),
  304. migrations.AddField(
  305. model_name="breadpage",
  306. name="bread_type",
  307. field=models.ForeignKey(
  308. blank=True,
  309. null=True,
  310. on_delete=django.db.models.deletion.SET_NULL,
  311. related_name="+",
  312. to="breads.BreadType",
  313. ),
  314. ),
  315. migrations.AddField(
  316. model_name="breadpage",
  317. name="image",
  318. field=models.ForeignKey(
  319. blank=True,
  320. help_text="Landscape mode only; horizontal width between 1000px and 3000px.",
  321. null=True,
  322. on_delete=django.db.models.deletion.SET_NULL,
  323. related_name="+",
  324. to="wagtailimages.Image",
  325. ),
  326. ),
  327. migrations.AddField(
  328. model_name="breadpage",
  329. name="ingredients",
  330. field=modelcluster.fields.ParentalManyToManyField(
  331. blank=True, to="breads.BreadIngredient"
  332. ),
  333. ),
  334. migrations.AddField(
  335. model_name="breadpage",
  336. name="origin",
  337. field=models.ForeignKey(
  338. blank=True,
  339. null=True,
  340. on_delete=django.db.models.deletion.SET_NULL,
  341. to="breads.Country",
  342. ),
  343. ),
  344. ]