kopia lustrzana https://github.com/rtts/django-simplecms
only add sections to existing pages to work around formset bug
rodzic
5ad04df8fb
commit
7446b928a4
|
@ -17,21 +17,23 @@
|
|||
{% endfor %}
|
||||
</div>
|
||||
|
||||
{{formset.management_form}}
|
||||
{% for form in formset %}
|
||||
{{form.media}}
|
||||
{% for field in form.hidden_fields %}
|
||||
{{field}}
|
||||
{% block sections %}
|
||||
{{formset.management_form}}
|
||||
{% for form in formset %}
|
||||
{{form.media}}
|
||||
{% for field in form.hidden_fields %}
|
||||
{{field}}
|
||||
{% endfor %}
|
||||
<section>
|
||||
<div class="wrapper">
|
||||
<h1>{% trans 'Section' %}: {{form.instance}}</h1>
|
||||
{% for field in form.visible_fields %}
|
||||
{% include 'cms/formfield.html' with field=field %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
</section>
|
||||
{% endfor %}
|
||||
<section>
|
||||
<div class="wrapper">
|
||||
<h1>{% trans 'Section' %}: {{form.instance}}</h1>
|
||||
{% for field in form.visible_fields %}
|
||||
{% include 'cms/formfield.html' with field=field %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
</section>
|
||||
{% endfor %}
|
||||
{% endblock %}
|
||||
|
||||
<div class="edit">
|
||||
<button>{% trans 'save' %}</button>
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
{% extends 'cms/edit.html' %}
|
||||
|
||||
{% block sections %}{% endblock %}
|
|
@ -1,5 +1,5 @@
|
|||
from django.urls import path
|
||||
from .views import PageView, UpdatePage, CreatePage, CreateSection
|
||||
from .views import PageView, UpdatePage, CreatePage
|
||||
|
||||
app_name = 'cms'
|
||||
|
||||
|
@ -9,5 +9,4 @@ urlpatterns = [
|
|||
path('cms/homepage/', UpdatePage.as_view(), {'slug': ''}, name='updatehomepage'),
|
||||
path('cms/page/<slug:slug>/', UpdatePage.as_view(), name='updatepage'),
|
||||
path('cms/newpage/', CreatePage.as_view(), name='createpage'),
|
||||
#path('cms/page/<slug:slug>/createsection/', CreateSection.as_view(), name='createsection'),
|
||||
]
|
||||
|
|
28
cms/views.py
28
cms/views.py
|
@ -1,10 +1,10 @@
|
|||
from django.views.generic import DetailView, UpdateView, CreateView
|
||||
from django.views.generic.detail import SingleObjectMixin
|
||||
from django.shortcuts import redirect, get_object_or_404
|
||||
from django.shortcuts import redirect
|
||||
from django.contrib.auth.mixins import UserPassesTestMixin
|
||||
from .models import *
|
||||
from .forms import *
|
||||
from .utils import *
|
||||
from django.views.generic import DetailView, UpdateView, CreateView
|
||||
|
||||
from .models import Page
|
||||
from .forms import PageForm, SectionFormSet
|
||||
from .utils import get_config
|
||||
|
||||
class StaffRequiredMixin(UserPassesTestMixin):
|
||||
def test_func(self):
|
||||
|
@ -25,7 +25,12 @@ class PageView(MenuMixin, DetailView):
|
|||
model = Page
|
||||
template_name = 'cms/page.html'
|
||||
|
||||
class EditPageMixin:
|
||||
class CreatePage(StaffRequiredMixin, MenuMixin, CreateView):
|
||||
model = Page
|
||||
form_class = PageForm
|
||||
template_name = 'cms/new.html'
|
||||
|
||||
class UpdatePage(StaffRequiredMixin, MenuMixin, UpdateView):
|
||||
model = Page
|
||||
form_class = PageForm
|
||||
template_name = 'cms/edit.html'
|
||||
|
@ -55,12 +60,3 @@ class EditPageMixin:
|
|||
'formset': formset,
|
||||
})
|
||||
return context
|
||||
|
||||
class UpdatePage(StaffRequiredMixin, MenuMixin, EditPageMixin, UpdateView):
|
||||
pass
|
||||
class CreatePage(StaffRequiredMixin, MenuMixin, EditPageMixin, CreateView):
|
||||
def get_object(self):
|
||||
pass
|
||||
|
||||
class CreateSection:
|
||||
pass
|
||||
|
|
Ładowanie…
Reference in New Issue