kopia lustrzana https://github.com/rtts/django-simplecms
Change default fields. This breaks existing migrations. Deal with it.
rodzic
25770feb57
commit
d5f5bb4296
|
@ -45,8 +45,7 @@ class Migration(migrations.Migration):
|
|||
('content', models.TextField(blank=True, verbose_name='content')),
|
||||
('image', models.ImageField(blank=True, upload_to='', verbose_name='image')),
|
||||
('video', embed_video.fields.EmbedVideoField(blank=True, help_text='Paste a YouTube, Vimeo, or SoundCloud link', verbose_name='video')),
|
||||
('button_text', cms.models.VarCharField(blank=True, verbose_name='button text')),
|
||||
('button_link', cms.models.VarCharField(blank=True, verbose_name='button link')),
|
||||
('href', cms.models.VarCharField(blank=True, verbose_name='button link')),
|
||||
('page', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='sections', to=settings.CMS_PAGE_MODEL, verbose_name='page')),
|
||||
('polymorphic_ctype', models.ForeignKey(editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='polymorphic_cms.section_set+', to='contenttypes.ContentType')),
|
||||
],
|
||||
|
|
|
@ -92,8 +92,7 @@ class BaseSection(Numbered, PolymorphicModel):
|
|||
content = models.TextField(_('content'), blank=True)
|
||||
image = models.ImageField(_('image'), blank=True)
|
||||
video = EmbedVideoField(_('video'), blank=True, help_text=_('Paste a YouTube, Vimeo, or SoundCloud link'))
|
||||
button_text = VarCharField(_('button text'), blank=True)
|
||||
button_link = VarCharField(_('button link'), blank=True)
|
||||
href = VarCharField(_('link'), blank=True)
|
||||
|
||||
def number_with_respect_to(self):
|
||||
return self.page.sections.all()
|
||||
|
|
|
@ -1,7 +0,0 @@
|
|||
{% load i18n %}
|
||||
|
||||
{% if request.user.is_staff %}
|
||||
<div class="edit">
|
||||
<a href="{% url 'cms:updatesection' section.pk %}">{% trans 'edit this section' %}</a>
|
||||
</div>
|
||||
{% endif %}
|
11
cms/views.py
11
cms/views.py
|
@ -185,8 +185,15 @@ class EditPage(UserPassesTestMixin, edit.ModelFormMixin, base.TemplateResponseMi
|
|||
page = form.save()
|
||||
formset = SectionFormSet(request.POST, request.FILES, instance=page)
|
||||
if formset.is_valid():
|
||||
formset.save()
|
||||
return HttpResponseRedirect(page.get_absolute_url())
|
||||
if formset.save():
|
||||
if page.slug and not page.sections.exists(): # anymore
|
||||
page.delete()
|
||||
return HttpResponseRedirect('/')
|
||||
return HttpResponseRedirect(page.get_absolute_url())
|
||||
else:
|
||||
# TODO: show sensible error
|
||||
formset.errors.append([{}, {'title': ['You have to add sections']}])
|
||||
formset = SectionFormSet(request.POST, request.FILES)
|
||||
return self.render_to_response(self.get_context_data(form=form, formset=formset))
|
||||
|
||||
class CreatePage(EditPage):
|
||||
|
|
|
@ -43,8 +43,7 @@ class Migration(migrations.Migration):
|
|||
('content', models.TextField(blank=True, verbose_name='content')),
|
||||
('image', models.ImageField(blank=True, upload_to='', verbose_name='image')),
|
||||
('video', embed_video.fields.EmbedVideoField(blank=True, help_text='Paste a YouTube, Vimeo, or SoundCloud link', verbose_name='video')),
|
||||
('button_text', cms.models.VarCharField(blank=True, verbose_name='button text')),
|
||||
('button_link', cms.models.VarCharField(blank=True, verbose_name='button link')),
|
||||
('href', cms.models.VarCharField(blank=True, verbose_name='button link')),
|
||||
('page', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='sections', to=settings.CMS_PAGE_MODEL, verbose_name='page')),
|
||||
('polymorphic_ctype', models.ForeignKey(editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='polymorphic_app.section_set+', to='contenttypes.ContentType')),
|
||||
],
|
||||
|
|
|
@ -11,7 +11,7 @@ class Page(BasePage):
|
|||
|
||||
class Section(BaseSection):
|
||||
'''Add custom fields here. Already existing fields: type, position,
|
||||
title, content, image, video, button_text, button_link
|
||||
title, content, image, video, href
|
||||
|
||||
'''
|
||||
|
||||
|
|
Ładowanie…
Reference in New Issue