Allow code blocks inside blogposts
This commit is contained in:
parent
f96124b744
commit
5e3746eb51
4 changed files with 45 additions and 3 deletions
|
@ -1,5 +1,8 @@
|
||||||
from wagtail.blocks import RichTextBlock
|
from wagtail.blocks import RichTextBlock
|
||||||
|
|
||||||
from base.blocks import StreamBlock
|
from base.blocks import StreamBlock
|
||||||
|
from wagtailcodeblock.blocks import CodeBlock
|
||||||
|
|
||||||
class BlogPostBlock(StreamBlock):
|
class BlogPostBlock(StreamBlock):
|
||||||
paragraph = RichTextBlock(blank=True)
|
paragraph = RichTextBlock(blank=True)
|
||||||
|
code = CodeBlock(label='Code snippet')
|
||||||
|
|
20
blog/migrations/0009_alter_blogpage_body.py
Normal file
20
blog/migrations/0009_alter_blogpage_body.py
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
# Generated by Django 5.0.2 on 2024-03-14 02:57
|
||||||
|
|
||||||
|
import wagtail.blocks
|
||||||
|
import wagtail.fields
|
||||||
|
from django.db import migrations
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('blog', '0008_alter_blogpage_body'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='blogpage',
|
||||||
|
name='body',
|
||||||
|
field=wagtail.fields.StreamField([('paragraph', wagtail.blocks.RichTextBlock(blank=True)), ('code', wagtail.blocks.StructBlock([('language', wagtail.blocks.ChoiceBlock(choices=[('bash', 'Bash/Shell'), ('css', 'CSS'), ('diff', 'diff'), ('html', 'HTML'), ('javascript', 'Javascript'), ('json', 'JSON'), ('python', 'Python'), ('scss', 'SCSS'), ('yaml', 'YAML')], help_text='Coding language', identifier='language', label='Language')), ('code', wagtail.blocks.TextBlock(identifier='code', label='Code'))], label='Code snippet'))], blank=True, help_text='Write anything'),
|
||||||
|
),
|
||||||
|
]
|
|
@ -29,6 +29,7 @@ INSTALLED_APPS = [
|
||||||
"blog",
|
"blog",
|
||||||
"home",
|
"home",
|
||||||
"search",
|
"search",
|
||||||
|
"wagtailcodeblock",
|
||||||
"wagtail.contrib.settings",
|
"wagtail.contrib.settings",
|
||||||
"wagtail.contrib.forms",
|
"wagtail.contrib.forms",
|
||||||
"wagtail.contrib.redirects",
|
"wagtail.contrib.redirects",
|
||||||
|
@ -177,4 +178,21 @@ WAGTAILSEARCH_BACKENDS = {
|
||||||
|
|
||||||
# Base URL to use when referring to full URLs within the Wagtail admin backend -
|
# Base URL to use when referring to full URLs within the Wagtail admin backend -
|
||||||
# e.g. in notification emails. Don't include '/admin' or a trailing slash
|
# e.g. in notification emails. Don't include '/admin' or a trailing slash
|
||||||
WAGTAILADMIN_BASE_URL = "http://example.com"
|
WAGTAILADMIN_BASE_URL = "https://iamkonstantin.eu"
|
||||||
|
|
||||||
|
WAGTAIL_CODE_BLOCK_LANGUAGES = (
|
||||||
|
('bash', 'Bash/Shell'),
|
||||||
|
('css', 'CSS'),
|
||||||
|
('dart', 'Dart'),
|
||||||
|
('elixir', 'Elixir'),
|
||||||
|
('go', 'Go'),
|
||||||
|
('html', 'HTML'),
|
||||||
|
('javascript', 'Javascript'),
|
||||||
|
('json', 'JSON'),
|
||||||
|
('kotlin', 'Kotlin'),
|
||||||
|
('python', 'Python'),
|
||||||
|
('swift', 'Swift'),
|
||||||
|
('yaml', 'YAML'),
|
||||||
|
)
|
||||||
|
|
||||||
|
WAGTAIL_CODE_BLOCK_THEME = 'twilight'
|
|
@ -1,3 +1,4 @@
|
||||||
Django>=4.2,<5.1
|
Django>=4.2,<5.1
|
||||||
wagtail>=6.0,<6.1
|
wagtail>=6.0,<6.1
|
||||||
whitenoise>=6.6,<7.0
|
whitenoise>=6.6,<7.0
|
||||||
|
wagtailcodeblock>=1.29.0.2,<2.0
|
Loading…
Add table
Add a link
Reference in a new issue