def content_list(request, area='content', model=None, filters=[], tpl='content_list', format='html', extra_context={}, order=None, paginate=True): items = model.all() if order is not None: items.order(order) for filter in filters: try: items = filter.filter(items) except AttributeError: items = [] if paginate: items = util.paginate(request, items, ENTRIES_PER_PAGE) c = template.RequestContext(request, locals()) c.update(extra_context) if not tpl.endswith(('html', 'json', 'atom', 'rss', 'json')): tpl = '%s.%s' % (tpl, format) if format == 'atom': return render_to_response(tpl, c, mimetype='application/atom+xml; charset=utf-8') elif format == 'rss': return render_to_response(tpl, c, mimetype='application/rss+xml; charset=utf-8') elif format == 'json': if paginate: items = items.object_list return util.HttpJsonResponse(serializers.serialize('json', items), request) return render_to_response(tpl, c)
def list(self, request, tpl='content_list', format='html', filters=[], order=None, paginate=True, per_page=ENTRIES_PER_PAGE): objects = self._get_items(filters, order) if paginate: objects = util.paginate(request, objects, per_page) context = {"items":objects, "paginate":paginate} return self._get_response(request, context, tpl, format)
def page_front(request): area="front" topnews = PostItem.get_latest() words_num = 30 page = "front" items = util.paginate(request, PostItem.get_latest()) c = template.RequestContext(request, locals()) t = loader.get_template('front.html') return http.HttpResponse(t.render(c))
def roles(request): if request.method == 'POST': action = request.POST.get('action', None) if action == 'role_delete': _ref = Role.get(uuid=request.POST.get('role_uuid')) _ref.delete() elif action == 'role_create': _ref = Role(name=request.POST.get('role_name')) _ref.put() area = "users" items = util.paginate(request, Role.all()) c = template.RequestContext(request, locals()) _flag_as_admin(c) return render_to_response('roles.html', c)
def handle(self): self.items = self.filter() self.items = util.paginate(self.request, self.items, self.per_age) self.update_context({"items":self.items}) return self.get_response()