remove paginate and paginate_alchemy
This commit is contained in:
@@ -2,7 +2,6 @@ import sqlalchemy as sa
|
||||
import datetime #<- will be used to set default dates on models
|
||||
|
||||
from sqlalchemy import or_
|
||||
from paginate_sqlalchemy import SqlalchemyOrmPage #<- provides pagination
|
||||
from ..models.blog_record import BlogRecord
|
||||
from markdown2 import Markdown
|
||||
|
||||
@@ -27,18 +26,12 @@ class BlogRecordService(object):
|
||||
return query.get(_id)
|
||||
|
||||
@classmethod
|
||||
def get_paginator(cls, request, page=1):
|
||||
def get_last_created(cls, request):
|
||||
# gest the 10 last created posts
|
||||
query = request.dbsession.query(BlogRecord)
|
||||
query = query.order_by(sa.desc(BlogRecord.created))
|
||||
query_params = request.GET.mixed()
|
||||
query = query.order_by(sa.desc(BlogRecord.created)).limit(10).all()
|
||||
return query
|
||||
|
||||
def url_maker(link_page):
|
||||
# replace page param with values generated by paginator
|
||||
query_params['page'] = link_page
|
||||
return request.current_route_url(_query=query_params)
|
||||
|
||||
return SqlalchemyOrmPage(query, page, items_per_page=5,
|
||||
url_maker=url_maker)
|
||||
|
||||
@classmethod
|
||||
def proc_after_create(cls, request, _id):
|
||||
|
||||
@@ -8,27 +8,18 @@
|
||||
</p>
|
||||
{% endif%}
|
||||
|
||||
{% if paginator.items %}
|
||||
|
||||
{% for entry in paginator.items %}
|
||||
<div class="col-xs-10">
|
||||
{{ entry.created.strftime("%d-%m-%Y") }}
|
||||
<a href="{{ request.route_url('blog', id=entry.id, slug=entry.slug) }}">
|
||||
<span class="glyphicon glyphicon-triangle-right"></span> {{ entry.title }}
|
||||
</a>
|
||||
</div>
|
||||
<div class="col-xs-2">
|
||||
<span class="glyphicon glyphicon-triangle-left"></span> {{ entry.tag }}
|
||||
</div>
|
||||
|
||||
<table id="posts_list" class="table table-condensed">
|
||||
{% for entry in last_ten %}
|
||||
<tr>
|
||||
<td>{{ entry.created.strftime("%d.%m.%Y") }}</td>
|
||||
<td>
|
||||
<a href="{{ request.route_url('blog', id=entry.id, slug=entry.slug) }}">{{ entry.title }}</a>
|
||||
</td>
|
||||
<td>{{ entry.topic }}</td>
|
||||
<td>{{ entry.tag }}</td>
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
|
||||
{{ paginator.pager() |safe }}
|
||||
|
||||
{% else %}
|
||||
|
||||
<p>No blog entries found.</p>
|
||||
|
||||
{% endif %}
|
||||
</table>
|
||||
|
||||
{% endblock %}
|
||||
|
||||
@@ -42,25 +42,15 @@ class BaseTest(unittest.TestCase):
|
||||
|
||||
class TestMyViewSuccessCondition(BaseTest):
|
||||
|
||||
def setUp(self):
|
||||
super(TestMyViewSuccessCondition, self).setUp()
|
||||
self.init_database()
|
||||
|
||||
from .models import MyModel
|
||||
|
||||
model = MyModel(name='one', value=55)
|
||||
self.session.add(model)
|
||||
|
||||
def test_passing_view(self):
|
||||
from .views.default import my_view
|
||||
info = my_view(dummy_request(self.session))
|
||||
self.assertEqual(info['one'].name, 'one')
|
||||
self.assertEqual(info['project'], 'cao_blogr')
|
||||
from .views.default import apropos
|
||||
response = apropos(dummy_request(self.session))
|
||||
self.assertEqual(response['page_title'], 'A propos')
|
||||
|
||||
|
||||
class TestMyViewFailureCondition(BaseTest):
|
||||
|
||||
def test_failing_view(self):
|
||||
from .views.default import my_view
|
||||
info = my_view(dummy_request(self.session))
|
||||
self.assertEqual(info.status_int, 500)
|
||||
from .views.default import apropos
|
||||
response = apropos(dummy_request(self.session))
|
||||
self.assertEqual(response['page_title'], 'A propos')
|
||||
|
||||
@@ -10,11 +10,11 @@ from ..models.user import User
|
||||
@view_config(route_name='home',
|
||||
renderer='cao_blogr:templates/home.jinja2')
|
||||
def home(request):
|
||||
page = int(request.params.get('page', 1))
|
||||
paginator = BlogRecordService.get_paginator(request, page)
|
||||
# get the last created posts
|
||||
last_ten = BlogRecordService.get_last_created(request)
|
||||
return {
|
||||
'page_title': "Bienvenue sur mon blog",
|
||||
'paginator': paginator
|
||||
'last_ten': last_ten,
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user