def sp_add(): form = StaticPageForm(request.POST) template = env.get_template('static_page_admin.html') if form.validate_on_post(): app.log(form.page_url.data) new_page = StaticPage.create(title=form.title.data, url=form.page_url.data, text=form.text.data) app.flash('New page!') pages = StaticPage.select() return template.render(form=form, pages=pages)
def post(self): form = StaticPageForm(self.request.POST) if form.validate(): page = StaticPage(**form.data) page.save() self.redirect_to("admin-staticpage-edit", page_id = page.key().id()) return { "admin_section": "admin-staticpage-add", "form": form, }
def get(self): pages = StaticPage.all() return { "admin_section": "admin-staticpages", "pages": pages, }
def sp_delete(sp_id): try: sp = StaticPage.get(StaticPage.id == sp_id) sp.delete_instance() app.flash(u'Сторінка видалена', 'success') redirect('/sp/add') except DoesNotExist: abort(404)
def clean(self): url = self.cleaned_data.get('url', None) for StaticPageClass in StaticPage.__subclasses__(): same_url = StaticPageClass.objects.filter(url=url) if self.instance.pk: same_url = same_url.exclude(pk=self.instance.pk) if same_url.all().exists(): raise forms.ValidationError('Flatpage with url %(url)s already exists' % {'url': url}) return super(StaticPageForm, self).clean()
def get(self, page_id, extra = None): page = StaticPage.get_by_id(long(page_id)) form = StaticPageForm(obj = page) return { "admin_section": "admin-staticpage-edit", "form": form, "success": extra=="saved", "upload_url": blobstore.create_upload_url(webapp2.uri_for('image-upload')), "page": page, }
def clean(self): url = self.cleaned_data.get('url', None) for StaticPageClass in StaticPage.__subclasses__(): same_url = StaticPageClass.objects.filter(url=url) if self.instance.pk: same_url = same_url.exclude(pk=self.instance.pk) if same_url.all().exists(): raise forms.ValidationError( 'Flatpage with url %(url)s already exists' % {'url': url}) return super(StaticPageForm, self).clean()
def post(self, page_id): page = StaticPage.get_by_id(long(page_id)) form = StaticPageForm(self.request.POST) success = False if form.validate(): form.populate_obj(page) page.save() success = True return { "admin_section": "admin-staticpage-edit", "form": form, "success": success, "page": page, }
def staticpage(request, url): #print 'STATICPAGE', url for StaticPageClass in StaticPage.__subclasses__(): staticpage = get_object_or_404(StaticPageClass, url=url[1:]) context = RequestContext(request, {'staticpage': staticpage}) return HttpResponse(loader.get_template('staticpage.html').render(context))