From 0683ce1c33f5341dc1ae7c6c8c805a745a763201 Mon Sep 17 00:00:00 2001 From: Mouse Reeve Date: Fri, 4 Feb 2022 12:06:47 -0800 Subject: [PATCH] Proper markdown formatting --- .../migrations/0133_alter_listitem_notes.py | 21 +++++++++++++++++++ bookwyrm/models/list.py | 2 +- bookwyrm/views/list/list_item.py | 5 ++++- 3 files changed, 26 insertions(+), 2 deletions(-) create mode 100644 bookwyrm/migrations/0133_alter_listitem_notes.py diff --git a/bookwyrm/migrations/0133_alter_listitem_notes.py b/bookwyrm/migrations/0133_alter_listitem_notes.py new file mode 100644 index 000000000..26ed10f82 --- /dev/null +++ b/bookwyrm/migrations/0133_alter_listitem_notes.py @@ -0,0 +1,21 @@ +# Generated by Django 3.2.11 on 2022-02-04 20:06 + +import bookwyrm.models.fields +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ("bookwyrm", "0132_alter_user_preferred_language"), + ] + + operations = [ + migrations.AlterField( + model_name="listitem", + name="notes", + field=bookwyrm.models.fields.HtmlField( + blank=True, max_length=300, null=True + ), + ), + ] diff --git a/bookwyrm/models/list.py b/bookwyrm/models/list.py index 7dff72144..ea524cc54 100644 --- a/bookwyrm/models/list.py +++ b/bookwyrm/models/list.py @@ -142,7 +142,7 @@ class ListItem(CollectionItemMixin, BookWyrmModel): user = fields.ForeignKey( "User", on_delete=models.PROTECT, activitypub_field="actor" ) - notes = fields.TextField(blank=True, null=True, max_length=300) + notes = fields.HtmlField(blank=True, null=True, max_length=300) approved = models.BooleanField(default=True) order = fields.IntegerField() endorsement = models.ManyToManyField("User", related_name="endorsers") diff --git a/bookwyrm/views/list/list_item.py b/bookwyrm/views/list/list_item.py index 5fd65938e..6dca908fb 100644 --- a/bookwyrm/views/list/list_item.py +++ b/bookwyrm/views/list/list_item.py @@ -5,6 +5,7 @@ from django.utils.decorators import method_decorator from django.views import View from bookwyrm import forms, models +from bookwyrm.views.status import to_markdown # pylint: disable=no-self-use @@ -18,7 +19,9 @@ class ListItem(View): list_item.raise_not_editable(request.user) form = forms.ListItemForm(request.POST, instance=list_item) if form.is_valid(): - form.save() + item = form.save(commit=False) + item.notes = to_markdown(item.notes) + item.save() else: raise Exception(form.errors) return redirect("list", list_item.book_list.id)