blob: d2e02a723de44d2b8da3ca71c0fad132753168eb (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
from pysite.base_route import RouteView
from pysite.mixins import DBMixin
class PageView(RouteView, DBMixin):
path = "/special/all_pages"
name = "special.all_pages"
table_name = "wiki"
def get(self):
pages = self.db.pluck(self.table_name, "title", "slug")
pages = sorted(pages, key=lambda d: d.get("title", "No Title"))
letters = {}
for page in pages:
if "title" not in page:
page["title"] = "No Title"
letter = page["title"][0].upper()
if letter not in letters:
letters[letter] = []
letters[letter].append(page)
return self.render("wiki/special_all.html", letters=letters)
|