本文整理汇总了Python中torlite.model.mspec.SpesubModel.get_all方法的典型用法代码示例。如果您正苦于以下问题:Python SpesubModel.get_all方法的具体用法?Python SpesubModel.get_all怎么用?Python SpesubModel.get_all使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类torlite.model.mspec.SpesubModel
的用法示例。
在下文中一共展示了SpesubModel.get_all方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: ModuleSpecMenu
# 需要导入模块: from torlite.model.mspec import SpesubModel [as 别名]
# 或者: from torlite.model.mspec.SpesubModel import get_all [as 别名]
class ModuleSpecMenu(tornado.web.UIModule):
def render(self):
self.mcat = SpesubModel()
all_cats = self.mcat.get_all()
kwd = {
'cats': all_cats,
}
return self.render_string('{0}/modules/spec_menu.html'.format(config.torlite_template_name), kwd=kwd)
示例2: ModuleSpecMenu
# 需要导入模块: from torlite.model.mspec import SpesubModel [as 别名]
# 或者: from torlite.model.mspec.SpesubModel import get_all [as 别名]
class ModuleSpecMenu(tornado.web.UIModule):
def render(self):
self.mcat = SpesubModel()
all_cats = self.mcat.get_all()
kwd = {
'cats': all_cats,
}
return self.render_string('tplite/modules/spec_menu.html', kwd=kwd)
示例3: CategoryHandler
# 需要导入模块: from torlite.model.mspec import SpesubModel [as 别名]
# 或者: from torlite.model.mspec.SpesubModel import get_all [as 别名]
class CategoryHandler(BaseHandler):
def initialize(self):
self.init()
self.muser = MUser()
self.mpost = MPost()
self.mcat = MCatalog()
self.cats = self.mcat.query_all()
self.mspec = SpesubModel()
self.specs = self.mspec.get_all()
self.mpost2catalog = MPost2Catalog()
if self.get_current_user():
self.userinfo = self.muser.get_by_id(self.get_current_user())
else:
self.userinfo = None
def get(self, input=''):
if len(input) > 0:
ip_arr = input.split(r'/')
if input == '':
pass
elif len(ip_arr) == 1:
self.list_catalog(input)
elif len(ip_arr) == 2:
self.list_catalog(ip_arr[0], ip_arr[1])
else:
self.render('html/404.html')
def list_catalog(self, cat_slug, cur_p=''):
if cur_p == '':
current_page_num = 1
else:
current_page_num = int(cur_p)
cat_rec = self.mcat.get_by_slug(cat_slug)
num_of_cat = self.mpost2catalog.catalog_record_number(cat_rec.uid)
page_num = int(num_of_cat / config.page_num) + 1
cat_name = cat_rec.name
kwd = {
'cat_name': cat_name,
'cat_slug': cat_slug,
'unescape': tornado.escape.xhtml_unescape,
'title': cat_name,
}
self.render('{0}/catalog/list.html'.format(self.tmpl_name),
infos=self.mpost2catalog.query_pager_by_slug(cat_slug, current_page_num),
pager=tools.gen_pager_purecss('/category/{0}'.format(cat_slug), page_num, current_page_num),
userinfo=self.userinfo,
kwd=kwd)
def get_random(self):
return self.mpost.query_random()
示例4: SearchHandler
# 需要导入模块: from torlite.model.mspec import SpesubModel [as 别名]
# 或者: from torlite.model.mspec.SpesubModel import get_all [as 别名]
class SearchHandler(BaseHandler):
def initialize(self):
# analyzer = ChineseAnalyzer()
# schema = Schema(title=TEXT(stored=True, analyzer = analyzer), path=ID(stored=True), content=TEXT(stored=True, analyzer=analyzer))
# ix = config.ix
# self.searcher = config.searcher
# self.parser = config.parser
# self.parser = QueryParser("content", schema=ix.schema)
self.muser = MUser()
self.mpost = MPost()
self.mcat = MCatalog()
self.cats = self.mcat.query_all()
self.mspec = SpesubModel()
self.specs = self.mspec.get_all()
self.mpost_hist = MPostHist()
self.mpost2catalog = MPost2Catalog()
if self.get_current_user():
self.userinfo = self.muser.get_by_id(self.get_current_user())
else:
self.userinfo = None
def get(self, url_str=''):
if url_str == '':
return
elif len(url_str) > 0:
self.search(url_str)
else:
kwd = {
'info': '页面未找到',
}
self.render('html/404.html', kwd=kwd)
def post(self, url_str=''):
keyword = self.get_argument('keyword')
self.search(keyword)
def to_find(self, ):
kwd = {
'pager': '',
}
self.render('tplite/post/find.html', topmenu='', kwd=kwd)
def search(self, keyword):
results = whoosh_search(keyword, 20)
# reswhoosh_search.keyworde limit=3limit=30)
kwd = {'title':'查找结果'}
self.render('tplite/search/search.html',
kwd=kwd,
srecs = results,
)
示例5: SearchHandler
# 需要导入模块: from torlite.model.mspec import SpesubModel [as 别名]
# 或者: from torlite.model.mspec.SpesubModel import get_all [as 别名]
class SearchHandler(BaseHandler):
def initialize(self):
self.init()
self.muser = MUser()
self.mpost = MPost()
self.mcat = MCatalog()
self.cats = self.mcat.query_all()
self.mspec = SpesubModel()
self.specs = self.mspec.get_all()
self.mpost_hist = MPostHist()
self.mpost2catalog = MPost2Catalog()
self.ysearch = yunsearch()
if self.get_current_user():
self.userinfo = self.muser.get_by_id(self.get_current_user())
else:
self.userinfo = None
def get(self, url_str=''):
url_arr = self.parse_url(url_str)
if url_str == '':
return
elif len(url_arr) == 1:
self.search(url_str)
elif len(url_arr) == 2:
self.search(url_arr[0], int(url_arr[1]))
else:
kwd = {
'info': '页面未找到',
}
self.render('html/404.html', kwd=kwd)
def post(self, url_str=''):
keyword = self.get_argument('keyword')
self.search(keyword)
def search(self, keyword, p_index=1):
res_all = self.ysearch.get_all_num(keyword)
results = self.ysearch.search_pager(keyword, page_index=p_index, doc_per_page=20)
page_num = int(res_all / 20)
kwd = {'title': '查找结果',
'pager': '',
}
self.render('{0}/search/search.html'.format(self.tmpl_name),
kwd=kwd,
srecs=results,
pager=tools.gen_pager_bootstrap_url('/search/{0}'.format(keyword), page_num, p_index),
cfg = config.cfg
)
示例6: PostAjaxHandler
# 需要导入模块: from torlite.model.mspec import SpesubModel [as 别名]
# 或者: from torlite.model.mspec.SpesubModel import get_all [as 别名]
class PostAjaxHandler(PostHandler):
def initialize(self):
self.init()
self.muser = MUser()
self.mpost = MPost()
self.mcat = MCatalog()
self.cats = self.mcat.query_all()
self.mspec = SpesubModel()
self.specs = self.mspec.get_all()
self.mpost_hist = MPostHist()
self.mpost2catalog = MPost2Catalog()
self.mpost2reply = MPost2Reply()
self.mapp2tag = MPost2Label()
self.mrel = MRelation()
self.tmpl_router = 'post_ajax'
if self.get_current_user():
self.userinfo = self.muser.get_by_id(self.get_current_user())
else:
self.userinfo = None
示例7: PostHandler
# 需要导入模块: from torlite.model.mspec import SpesubModel [as 别名]
# 或者: from torlite.model.mspec.SpesubModel import get_all [as 别名]
class PostHandler(BaseHandler):
def initialize(self):
self.init()
self.muser = MUser()
self.mpost = MPost()
self.mcat = MCatalog()
self.cats = self.mcat.query_all()
self.mspec = SpesubModel()
self.specs = self.mspec.get_all()
self.mpost_hist = MPostHist()
self.mpost2catalog = MPost2Catalog()
self.mpost2reply = MPost2Reply()
self.mapp2tag = MPost2Label()
self.mrel = MRelation()
self.tmpl_router = 'post'
if self.get_current_user():
self.userinfo = self.muser.get_by_id(self.get_current_user())
else:
self.userinfo = None
def get(self, url_str=''):
if url_str == '':
self.recent()
url_arr = url_str.split('/')
if len(url_arr) == 1 and url_str.endswith('.html'):
self.wiki(url_str.split('.')[0])
elif url_str == 'add_document':
self.to_add_document()
elif url_str == 'recent':
self.recent()
elif url_str == 'refresh':
self.refresh()
elif (url_arr[0] == 'modify'):
self.to_modify(url_arr[1])
elif url_arr[0] == 'delete':
self.delete(url_arr[1])
else:
kwd = {
'info': '页面未找到',
}
self.render('html/404.html', kwd=kwd)
def post(self, url_str=''):
if url_str == '':
return
url_arr = url_str.split('/')
if len(url_arr) == 1 and url_str.endswith('.html'):
self.add_post()
if url_arr[0] == 'modify':
self.update(url_arr[1])
elif url_str == 'add_document':
self.user_add_post()
elif url_arr[0] == 'add_document':
self.user_add_post()
else:
self.redirect('/html/404.html')
def recent(self, with_catalog=True, with_date=True):
kwd = {
'pager': '',
'unescape': tornado.escape.xhtml_unescape,
'title': '最近文档',
'with_catalog': with_catalog,
'with_date': with_date,
}
self.render('{0}/{1}/post_list.html'.format(self.tmpl_name, self.tmpl_router),
kwd=kwd,
view=self.mpost.query_recent(),
view_all=self.mpost.query_all(),
format_date=tools.format_date,
userinfo=self.userinfo,
)
def refresh(self):
kwd = {
'pager': '',
'title': '最近文档',
}
self.render('{0}/{1}/post_list.html'.format(self.tmpl_name, self.tmpl_router),
kwd=kwd,
userinfo=self.userinfo,
view=self.mpost.query_dated(10),
format_date=tools.format_date,
unescape=tornado.escape.xhtml_unescape, )
def get_random(self):
return self.mpost.query_random()
def wiki(self, uid):
dbdate = self.mpost.get_by_id(uid)
if dbdate:
self.mpost.update_view_count_by_uid(dbdate.uid)
self.viewit(uid)
#.........这里部分代码省略.........
示例8: WikiHandler
# 需要导入模块: from torlite.model.mspec import SpesubModel [as 别名]
# 或者: from torlite.model.mspec.SpesubModel import get_all [as 别名]
class WikiHandler(BaseHandler):
def initialize(self):
self.init()
self.muser = MUser()
self.mwiki = MWiki()
self.mcat = MCatalog()
self.cats = self.mcat.query_all()
self.mspec = SpesubModel()
self.specs = self.mspec.get_all()
self.mwiki_hist = MWikiHist()
if self.get_current_user():
self.userinfo = self.muser.get_by_id(self.get_current_user())
else:
self.userinfo = None
def get(self, url_str=''):
if url_str == '':
return
url_arr = url_str.split(r'/')
if url_str == 'recent':
self.recent()
elif url_str == 'refresh':
self.refresh()
elif (url_arr[0] == 'edit'):
self.to_modify(url_arr[1])
elif len(url_arr) == 1:
self.wiki(url_str)
else:
kwd = {
'info': '页面未找到',
}
self.render('html/404.html', kwd=kwd)
def post(self, input=''):
if input == '':
return
url_arr = input.split(r'/')
if url_arr[0] == 'edit':
self.update(url_arr[1])
elif url_arr[0] == 'add':
self.wikinsert()
else:
self.redirect('html/404.html')
def recent(self):
kwd = {
'pager': '',
'unescape': tornado.escape.xhtml_unescape,
'title': '最近文档',
}
self.render('{0}/wiki/wiki_list.html'.format(self.tmpl_name),
kwd=kwd,
view=self.mwiki.query_recent(),
format_date=tools.format_date, )
def refresh(self):
kwd = {
'pager': '',
'unescape': tornado.escape.xhtml_unescape,
'title': '最近文档',
}
self.render('{0}/wiki/wiki_list.html'.format(self.tmpl_name),
kwd=kwd,
view=self.mwiki.query_dated(16),
format_date=tools.format_date, )
def wiki(self, title):
dbdate = self.mwiki.get_by_wiki(title)
if dbdate:
self.mwiki.update_view_count_by_uid(dbdate.uid)
self.viewit(dbdate)
else:
self.to_add(title)
@tornado.web.authenticated
def to_add(self, title):
kwd = {
'cats': self.cats,
'specs': self.specs,
'title': title,
'pager': '',
}
self.render('{0}/wiki/wiki_add.html'.format(self.tmpl_name), kwd=kwd, )
@tornado.web.authenticated
def update(self, uid):
raw_data = self.mwiki.get_by_id(uid)
if self.userinfo.privilege[2] == '1' or raw_data.user_name == self.get_current_user():
pass
else:
return False
post_data = {}
for key in self.request.arguments:
post_data[key] = self.get_arguments(key)
post_data['user_name'] = self.get_current_user()
self.mwiki.update(uid, post_data)
self.mwiki_hist.insert_data(raw_data)
self.redirect('/wiki/{0}'.format(tornado.escape.url_escape(post_data['title'][0])))
#.........这里部分代码省略.........
示例9: SpecHandler
# 需要导入模块: from torlite.model.mspec import SpesubModel [as 别名]
# 或者: from torlite.model.mspec.SpesubModel import get_all [as 别名]
class SpecHandler(BaseHandler):
def initialize(self):
self.muser = MUser()
self.mpage = MPage()
self.mdb = MPost()
self.mcat = MCatalog()
self.cats = self.mcat.query_all()
self.mspec = SpesubModel()
if self.get_current_user():
self.userinfo = self.muser.get_by_id(self.get_current_user())
else:
self.userinfo = None
def get(self, input=''):
if len(input) > 0:
ip_arr = input.split(r'/')
if input == '':
self.index()
elif input == 'add':
self.to_add()
elif len(ip_arr) == 1:
self.list(input)
elif len(ip_arr) == 2 and ip_arr[1] == 'edit':
self.to_edit(ip_arr[0])
else:
self.render('/html/404.html')
def post(self, input=''):
if len(input) > 0:
ip_arr = input.split(r'/')
if input == '':
pass
elif input == 'add':
self.add()
elif len(ip_arr) == 2 and ip_arr[1] == 'edit':
self.edit(ip_arr[0])
else:
self.render('/html/404.html')
self.redirect('/spec/')
@tornado.web.authenticated
def edit(self, uid):
post_data = {}
for key in self.request.arguments:
post_data[key] = self.get_arguments(key)
self.mspec.update(uid, post_data)
@tornado.web.authenticated
def add(self):
post_data = {}
for key in self.request.arguments:
post_data[key] = self.get_arguments(key)
self.mspec.addata(post_data)
@tornado.web.authenticated
def to_edit(self, uid):
spec_rec = self.mspec.get_by_id(uid)
self.render('tplite/spec/edit.html', spec_rec=spec_rec)
@tornado.web.authenticated
def to_add(self):
print('to_add')
self.render('tplite/spec/add.html')
def list(self, spec_slug):
'''
列出专题信息,按某一分类
'''
page_rec = self.mspec.get_by_slug(spec_slug)
kwd = {
'editable': self.editable()
}
self.render('tplite/spec/list.html',
kwd=kwd,
spec=page_rec,
unescape=tornado.escape.xhtml_unescape,
spec_recs=self.mdb.query_by_spec(page_rec.uid),
)
def index(self):
kwd = {
'editable': self.editable()
}
spec_recs = self.mspec.get_all()
self.render('tplite/spec/index.html', spec_recs=spec_recs, kwd=kwd)
示例10: SpecHandler
# 需要导入模块: from torlite.model.mspec import SpesubModel [as 别名]
# 或者: from torlite.model.mspec.SpesubModel import get_all [as 别名]
class SpecHandler(BaseHandler):
def initialize(self):
self.mpage = MPage()
self.mdb = MPost()
self.mcat = MCatalog()
self.cats = self.mcat.query_all()
self.mspec = SpesubModel()
def get(self, input=''):
if len(input) > 0:
ip_arr = input.split(r'/')
if input == '':
self.index()
elif input == 'add':
self.to_add()
elif len(ip_arr) == 1:
self.list(input)
elif len(ip_arr) == 2 and ip_arr[1] == 'edit':
self.to_edit(ip_arr[0])
else:
self.render('/html/404.html')
def post(self, input=''):
if len(input) > 0:
ip_arr = input.split(r'/')
if input == '':
pass
elif input == 'add':
self.add()
elif len(ip_arr) == 2 and ip_arr[1] == 'edit':
self.edit(ip_arr[0])
else:
self.render('/html/404.html')
self.redirect('/spec/')
@tornado.web.authenticated
def edit(self, uid):
post_data = {}
for key in self.request.arguments:
post_data[key] = self.get_arguments(key)
self.mspec.update(uid, post_data)
@tornado.web.authenticated
def add(self):
post_data = {}
for key in self.request.arguments:
post_data[key] = self.get_arguments(key)
self.mspec.addata(post_data)
@tornado.web.authenticated
def to_edit(self, uid):
spec_rec = self.mspec.get_by_id(uid)
self.render('tplite/spec/edit.html', spec_rec=spec_rec)
@tornado.web.authenticated
def to_add(self):
# spec_rec = self.mspec.get_by_id(uid)
uuu = self.mcat.query_all()
self.render('tplite/spec/add.html', cat_recs=uuu)
def list(self, spec_slug):
'''
列出专题信息,按某一分类
'''
page_rec = self.mspec.get_by_slug(spec_slug)
# content = self.mpage.get_by_wiki(page_rec.name)
# if content is None:
# re_url = '/page/{0}'.format(tornado.escape.url_escape(page_rec.name))
# self.redirect(re_url)
recs = self.mdb.query_by_spec(page_rec.id)
kwd = {
# 'spec': content,
# 'view': recs,
'editable': self.editable()
}
self.render('tplite/spec/list.html',
kwd=kwd,
spec=page_rec,
unescape=tornado.escape.xhtml_unescape,
spec_recs=recs)
def index(self):
kwd = {
# 'spec': content,
# 'view': recs,
'editable': self.editable()
}
spec_recs = self.mspec.get_all()
self.render('tplite/spec/index.html', spec_recs=spec_recs, kwd=kwd)
示例11: PageHandler
# 需要导入模块: from torlite.model.mspec import SpesubModel [as 别名]
# 或者: from torlite.model.mspec.SpesubModel import get_all [as 别名]
class PageHandler(BaseHandler):
def initialize(self):
self.init()
self.muser = MUser()
self.mdb = MPage()
self.mcat = MCatalog()
self.cats = self.mcat.query_all()
self.mspec = SpesubModel()
self.specs = self.mspec.get_all()
if self.get_current_user():
self.userinfo = self.muser.get_by_id(self.get_current_user())
else:
self.userinfo = None
def get(self, input=''):
if input == '':
return
ip_arr = input.split('/')
if (ip_arr[0] == 'modify'):
self.to_modify(ip_arr[1])
elif len(ip_arr) == 1 and input.endswith('.html'):
self.wiki(input.split('.')[0])
else:
self.render('/html/404.html')
def post(self, input=''):
if input == '':
return False
else:
ip_arr = input.split('/')
if ip_arr[0] == 'modify':
self.update(ip_arr[1])
else:
self.wikinsert()
def wiki(self, slug):
dbdate = self.mdb.get_by_slug(slug)
if dbdate:
self.viewit(dbdate)
else:
self.to_add(slug)
@tornado.web.authenticated
def to_add(self, citiao):
kwd = {
'cats': self.cats,
'specs': self.specs,
'slug': citiao,
'pager': '',
}
self.render('{0}/page/page_add.html'.format(self.tmpl_name), kwd=kwd)
@tornado.web.authenticated
def update(self, slug):
post_data = {}
for key in self.request.arguments:
post_data[key] = self.get_arguments(key)
if 'slug' in post_data:
pass
else:
self.set_status(400)
return False
self.mdb.update(slug, post_data)
self.redirect('/page/{0}.html'.format(post_data['slug'][0]))
@tornado.web.authenticated
def to_modify(self, slug):
kwd = {
'pager': '',
}
self.render('{0}/page/page_edit.html'.format(self.tmpl_name),
view=self.mdb.get_by_slug(slug),
kwd=kwd,
unescape=tornado.escape.xhtml_unescape, )
def viewit(self, dbdata):
kwd = {
'pager': '',
'editable': 1 if self.get_current_user() else 0,
}
self.render('{0}/page/page_view.html'.format(self.tmpl_name),
view=dbdata,
unescape=tornado.escape.xhtml_unescape,
kwd=kwd,
format_date=tools.format_date,
userinfo=self.userinfo,
)
@tornado.web.authenticated
def wikinsert(self):
post_data = {}
for key in self.request.arguments:
post_data[key] = self.get_arguments(key)
#.........这里部分代码省略.........
示例12: SearchHandler
# 需要导入模块: from torlite.model.mspec import SpesubModel [as 别名]
# 或者: from torlite.model.mspec.SpesubModel import get_all [as 别名]
class SearchHandler(BaseHandler):
def initialize(self):
# analyzer = ChineseAnalyzer()
# schema = Schema(title=TEXT(stored=True, analyzer = analyzer), path=ID(stored=True), content=TEXT(stored=True, analyzer=analyzer))
# ix = config.ix
# self.searcher = config.searcher
# self.parser = config.parser
# self.parser = QueryParser("content", schema=ix.schema)
self.muser = MUser()
self.mpost = MPost()
self.mcat = MCatalog()
self.cats = self.mcat.query_all()
self.mspec = SpesubModel()
self.specs = self.mspec.get_all()
self.mpost_hist = MPostHist()
self.mpost2catalog = MPost2Catalog()
self.ysearch = yunsearch()
if self.get_current_user():
self.userinfo = self.muser.get_by_id(self.get_current_user())
else:
self.userinfo = None
def get(self, url_str=''):
if len(url_str) > 0:
url_arr = url_str.split('/')
if url_str == '':
return
elif len(url_arr) == 1:
self.search(url_str)
elif len(url_arr) == 2:
self.search(url_arr[0], int(url_arr[1]))
else:
kwd = {
'info': '页面未找到',
}
self.render('html/404.html', kwd=kwd)
def post(self, url_str=''):
keyword = self.get_argument('keyword')
self.search(keyword)
def to_find(self, ):
kwd = {
'pager': '',
}
self.render('tplite/post/find.html', topmenu='', kwd=kwd)
def search(self, keyword, p_index = 1):
res_all = self.ysearch.get_all_num(keyword)
# res_all = get_all_num(keyword)
# results = self.ysearch.search(keyword, 20)
results = self.ysearch.search_pager(keyword, page_index=p_index, doc_per_page=20)
print('-' * 40)
page_num = int(res_all / 20)
kwd = {'title':'查找结果',
'pager': '',
}
self.render('tplite/search/search.html',
kwd=kwd,
srecs = results,
pager = tools.gen_pager_bootstrap_url('/search/{0}'.format(keyword), page_num, p_index),
)
示例13: WikiHandler
# 需要导入模块: from torlite.model.mspec import SpesubModel [as 别名]
# 或者: from torlite.model.mspec.SpesubModel import get_all [as 别名]
class WikiHandler(BaseHandler):
def initialize(self):
self.muser = MUser()
self.mwiki = MWiki()
self.mcat = MCatalog()
self.cats = self.mcat.query_all()
self.mspec = SpesubModel()
self.specs = self.mspec.get_all()
self.mwiki_hist = MWikiHist()
if self.get_current_user():
self.userinfo = self.muser.get_by_id(self.get_current_user())
else:
self.userinfo = None
def get(self, url_str=""):
if url_str == "":
return
url_arr = url_str.split(r"/")
if url_str == "find":
self.to_find()
# elif url_arr[0] == 'find':
# self.find(url_arr[1])
elif url_str == "recent":
self.recent()
elif url_str == "refresh":
self.refresh()
elif url_arr[0] == "edit":
self.to_modify(url_arr[1])
elif len(url_arr) == 1:
self.wiki(url_str)
else:
kwd = {"info": "页面未找到"}
self.render("html/404.html", kwd=kwd)
def post(self, input=""):
if input == "":
return
url_arr = input.split(r"/")
if url_arr[0] == "edit":
self.update(url_arr[1])
elif url_arr[0] == "add":
self.wikinsert()
else:
self.redirect("static/404.html")
def to_find(self,):
kwd = {"pager": ""}
self.render("tplite/post/find.html", topmenu="", kwd=kwd)
def recent(self):
kwd = {"pager": "", "unescape": tornado.escape.xhtml_unescape, "title": "最近文档"}
self.render(
"tplite/wiki/all.html".format(input), kwd=kwd, view=self.mwiki.query_recent(), format_date=tools.format_date
)
def refresh(self):
kwd = {"pager": "", "unescape": tornado.escape.xhtml_unescape, "title": "最近文档"}
self.render(
"tplite/wiki/all.html".format(input),
kwd=kwd,
view=self.mwiki.query_dated(16),
format_date=tools.format_date,
)
def wiki(self, title):
dbdate = self.mwiki.get_by_wiki(title)
if dbdate:
self.mwiki.update_view_count_by_uid(dbdate.uid)
self.viewit(dbdate)
else:
self.to_add(title)
@tornado.web.authenticated
def to_add(self, title):
kwd = {"cats": self.cats, "specs": self.specs, "title": title, "pager": ""}
self.render("tplite/wiki/addwiki.html", kwd=kwd)
@tornado.web.authenticated
def update(self, uid):
raw_data = self.mwiki.get_by_id(uid)
if self.userinfo.privilege[2] == "1" or raw_data.user_name == self.get_current_user():
pass
else:
return False
post_data = {}
for key in self.request.arguments:
post_data[key] = self.get_arguments(key)
post_data["user_name"] = self.get_current_user()
self.mwiki.update(uid, post_data)
self.mwiki_hist.insert_data(raw_data)
self.redirect("/wiki/{0}".format(tornado.escape.url_escape(post_data["title"][0])))
@tornado.web.authenticated
def to_modify(self, id_rec):
wiki_rec = self.mwiki.get_by_id(id_rec)
# 用户具有管理权限,
# 或
# 文章是用户自己发布的。
if self.userinfo.privilege[2] == "1" or wiki_rec.user_name == self.get_current_user():
#.........这里部分代码省略.........
示例14: PostHandler
# 需要导入模块: from torlite.model.mspec import SpesubModel [as 别名]
# 或者: from torlite.model.mspec.SpesubModel import get_all [as 别名]
class PostHandler(BaseHandler):
def initialize(self):
self.muser = MUser()
self.mpost = MPost()
self.mcat = MCatalog()
self.cats = self.mcat.query_all()
self.mspec = SpesubModel()
self.specs = self.mspec.get_all()
self.mpost_hist = MPostHist()
self.mpost2catalog = MPost2Catalog()
self.mpost2reply = MPost2Reply()
self.mapp2tag = MPost2Label()
self.mrel = MRelation()
if self.get_current_user():
self.userinfo = self.muser.get_by_id(self.get_current_user())
else:
self.userinfo = None
def get(self, url_str=""):
if url_str == "":
return
url_arr = url_str.split("/")
if len(url_arr) == 1 and url_str.endswith(".html"):
self.wiki(url_str.split(".")[0])
# 弃用, /search 代替
# elif url_arr[0] == 'find':
# self.find(url_arr[1])
# elif url_str == 'find':
# self.to_find()
elif url_str == "add_document":
self.to_add_document()
elif url_str == "recent":
self.recent()
elif url_str == "refresh":
self.refresh()
elif url_arr[0] == "modify":
self.to_modify(url_arr[1])
else:
kwd = {"info": "页面未找到"}
self.render("html/404.html", kwd=kwd)
def post(self, url_str=""):
if url_str == "":
return
url_arr = url_str.split("/")
if len(url_arr) == 1 and url_str.endswith(".html"):
sig = url_str.split(".")[0]
self.add_post()
if url_arr[0] == "modify":
self.update(url_arr[1])
elif url_str == "find":
self.post_find()
elif url_str == "add_document":
self.user_add_post()
elif url_arr[0] == "add":
self.add_post()
else:
self.redirect("/html/404.html")
def to_find(self,):
kwd = {"pager": ""}
self.render("tplite/post/find.html", topmenu="", kwd=kwd)
def recent(self):
kwd = {"pager": "", "unescape": tornado.escape.xhtml_unescape, "title": "最近文档"}
self.render(
"tplite/post/all.html".format(input),
kwd=kwd,
view=self.mpost.query_recent(),
format_date=tools.format_date,
userinfo=self.userinfo,
)
def refresh(self):
kwd = {"pager": "", "title": "最近文档"}
self.render(
"tplite/post/refresh.html",
kwd=kwd,
userinfo=self.userinfo,
view=self.mpost.query_dated(10),
format_date=tools.format_date,
unescape=tornado.escape.xhtml_unescape,
)
def post_find(self):
keyword = self.get_argument("keyword")
self.find(keyword)
def find(self, keyword):
kwd = {"pager": "", "unescape": tornado.escape.xhtml_unescape, "title": "查找结果"}
self.render("tplite/post/find_list.html".format(input), kwd=kwd, view=self.mpost.get_by_keyword(keyword))
#.........这里部分代码省略.........
示例15: PostHandler
# 需要导入模块: from torlite.model.mspec import SpesubModel [as 别名]
# 或者: from torlite.model.mspec.SpesubModel import get_all [as 别名]
class PostHandler(BaseHandler):
def initialize(self):
self.muser = MUser()
self.mpost = MPost()
self.mcat = MCatalog()
self.cats = self.mcat.query_all()
self.mspec = SpesubModel()
self.specs = self.mspec.get_all()
self.mpost_hist = MPostHist()
self.mpost2catalog = MPost2Catalog()
self.mpost2reply = MPost2Reply()
self.mapp2tag = MPost2Label()
self.mrel = MRelation()
if self.get_current_user():
self.userinfo = self.muser.get_by_id(self.get_current_user())
else:
self.userinfo = None
def get(self, url_str=''):
if url_str == '':
return
url_arr = url_str.split('/')
if len(url_arr) == 1 and url_str.endswith('.html'):
self.wiki(url_str.split('.')[0])
# 弃用, /search 代替
# elif url_arr[0] == 'find':
# self.find(url_arr[1])
# elif url_str == 'find':
# self.to_find()
elif url_str == 'add_document':
self.to_add_document()
elif url_str == 'recent':
self.recent()
elif url_str == 'refresh':
self.refresh()
elif (url_arr[0] == 'modify'):
self.to_modify(url_arr[1])
else:
kwd = {
'info': '页面未找到',
}
self.render('html/404.html', kwd=kwd)
def post(self, url_str=''):
if url_str == '':
return
url_arr = url_str.split('/')
if len(url_arr) == 1 and url_str.endswith('.html'):
sig = url_str.split('.')[0]
self.add_post()
if url_arr[0] == 'modify':
self.update(url_arr[1])
elif url_str == 'find':
self.post_find()
elif url_str == 'add_document':
self.user_add_post()
elif url_arr[0] == 'add':
self.add_post()
else:
self.redirect('/html/404.html')
def to_find(self, ):
kwd = {
'pager': '',
}
self.render('tplite/post/find.html', topmenu='', kwd=kwd)
def recent(self):
kwd = {
'pager': '',
'unescape': tornado.escape.xhtml_unescape,
'title': '最近文档',
}
self.render('tplite/post/all.html'.format(input),
kwd=kwd,
view=self.mpost.query_recent(),
format_date=tools.format_date,
userinfo=self.userinfo,
)
def refresh(self):
kwd = {
'pager': '',
'title': '最近文档',
}
self.render('tplite/post/refresh.html',
kwd=kwd,
userinfo=self.userinfo,
view=self.mpost.query_dated(10),
format_date=tools.format_date,
#.........这里部分代码省略.........