def template(tpl, **kwargs):
template = env.get_template(tpl)
return html(template.render(kwargs))
python类html()的实例源码
def index(request):
user = request['session'].get('user', None)
search_ranking = await cache_owllook_search_ranking()
if user:
return template('index.html', title='owllook - ????????', is_login=1, user=user,
search_ranking=search_ranking[:25])
else:
return template('index.html', title='owllook - ????????', is_login=0, search_ranking=search_ranking[:25])
def donate(request):
return template('donate.html')
def template(tpl, **kwargs):
template = env.get_template(tpl)
return html(template.render(kwargs))
def ignore_404(request, exception):
if "google3eabdadc11faf3b3" in request.url:
return template('google3eabdadc11faf3b3.html')
return template('404.html')
def template(tpl, **kwargs):
template = env.get_template(tpl)
return html(template.render(kwargs))
def template(tpl, **kwargs):
template = env.get_template(tpl)
return html(template.render(kwargs))
def index(request):
user = request['session'].get('user', None)
novels_head = ['#', '???', '????']
first_type_title = "????"
first_type = []
search_ranking = await cache_owllook_search_ranking()
if user:
return template('index.html', title='owllook', is_login=1, user=user, search_ranking=search_ranking,
first_type=first_type, first_type_title=first_type_title, novels_head=novels_head, is_owl=1)
else:
return template('index.html', title='owllook', is_login=0, search_ranking=search_ranking, first_type=first_type,
first_type_title=first_type_title, novels_head=novels_head, is_owl=1)
def similar_user(request):
user = request['session'].get('user', None)
if user:
try:
motor_db = motor_base.get_db()
similar_info = await motor_db.user_recommend.find_one({'user': user})
if similar_info:
similar_user = similar_info['similar_user'][:20]
user_tag = similar_info['user_tag']
updated_at = similar_info['updated_at']
return template('similar_user.html',
title='?' + user + '?????',
is_login=1,
is_similar=1,
user=user,
similar_user=similar_user,
user_tag=user_tag,
updated_at=updated_at)
else:
return template('similar_user.html',
title='?' + user + '?????',
is_login=1,
is_similar=0,
user=user)
except Exception as e:
LOGGER.error(e)
return redirect('/')
else:
return redirect('/')
def bookmarks(request):
user = request['session'].get('user', None)
if user:
try:
motor_db = motor_base.get_db()
data = await motor_db.user_message.find_one({'user': user})
if data:
# ??????
bookmarks = data.get('bookmarks', None)
if bookmarks:
result = []
for i in bookmarks:
item_result = {}
bookmark = i.get('bookmark', None)
query = parse_qs(urlparse(bookmark).query)
item_result['novels_name'] = query.get('novels_name', '')[0] if query.get('novels_name',
'') else ''
item_result['chapter_name'] = query.get(
'name', '')[0] if query.get('name', '') else ''
item_result['chapter_url'] = query.get('chapter_url', '')[0] if query.get('chapter_url',
'') else ''
item_result['bookmark'] = bookmark
item_result['add_time'] = i.get('add_time', '')
result.append(item_result)
return template('admin_bookmarks.html', title='{user}??? - owllook'.format(user=user),
is_login=1,
user=user,
is_bookmark=1,
result=result[::-1])
return template('admin_bookmarks.html', title='{user}??? - owllook'.format(user=user),
is_login=1,
user=user,
is_bookmark=0)
except Exception as e:
LOGGER.error(e)
return redirect('/')
else:
return redirect('/')
def book_list(request):
user = request['session'].get('user', None)
if user:
try:
return template('admin_book_list.html', title='{user}??? - owllook'.format(user=user),
is_login=1,
user=user)
except Exception as e:
LOGGER.error(e)
return redirect('/')
else:
return redirect('/')
def template(tpl, **kwargs):
template = env.get_template(tpl)
return html(template.render(kwargs))
def similar_user(request):
user = request['session'].get('user', None)
if user:
try:
motor_db = motor_base.get_db()
similar_info = await motor_db.user_recommend.find_one({'user': user})
if similar_info:
similar_user = similar_info['similar_user'][:20]
user_tag = similar_info['user_tag']
updated_at = similar_info['updated_at']
return template('similar_user.html',
title='?' + user + '?????',
is_login=1,
is_similar=1,
user=user,
similar_user=similar_user,
user_tag=user_tag,
updated_at=updated_at)
else:
return template('similar_user.html',
title='?' + user + '?????',
is_login=1,
is_similar=0,
user=user)
except Exception as e:
LOGGER.error(e)
return redirect('/')
else:
return redirect('/')
def bookmarks(request):
user = request['session'].get('user', None)
if user:
try:
motor_db = motor_base.get_db()
data = await motor_db.user_message.find_one({'user': user})
if data:
# ??????
bookmarks = data.get('bookmarks', None)
if bookmarks:
result = []
for i in bookmarks:
item_result = {}
bookmark = i.get('bookmark', None)
query = parse_qs(urlparse(bookmark).query)
item_result['novels_name'] = query.get('novels_name', '')[0] if query.get('novels_name',
'') else ''
item_result['chapter_name'] = query.get('name', '')[0] if query.get('name', '') else ''
item_result['chapter_url'] = query.get('chapter_url', '')[0] if query.get('chapter_url',
'') else ''
item_result['bookmark'] = bookmark
item_result['add_time'] = i.get('add_time', '')
result.append(item_result)
return template('admin_bookmarks.html', title='{user}??? - owllook'.format(user=user),
is_login=1,
user=user,
is_bookmark=1,
result=result[::-1])
return template('admin_bookmarks.html', title='{user}??? - owllook'.format(user=user),
is_login=1,
user=user,
is_bookmark=0)
except Exception as e:
LOGGER.error(e)
return redirect('/')
else:
return redirect('/')
def add_session_to_request(request):
# before each request initialize a session
# using the client's request
host = request.headers.get('host', None)
user_agent = request.headers.get('user-agent', None)
if user_agent:
if CONFIG.VAL_HOST == 'true':
if not host or host not in CONFIG.HOST:
return redirect('http://www.owllook.net')
if CONFIG.WEBSITE['IS_RUNNING']:
await app.session_interface.open(request)
else:
return html("<h3>??????...</h3>")
else:
return html("<h3>??????...</h3>")
def homepage(req):
global request_count
request_count = request_count + 1
shared_count = 0
heading = "Stateless Front-End"
if redis:
await redis.incr(shared_counter)
shared_count = int(await redis.get(shared_counter))
heading = "Shared State Front-End"
return html(layout.render(request=req,
heading=heading,
hostname=gethostname(),
requests=request_count,
shared_count=shared_count,
timestr=datetime.now().strftime("%H:%M:%S.%f")))
def index(req):
return html(template.render())
def render_jinja2(tpl_path, context):
"""
Render jinja2 html template (not used lol)
"""
path, filename = os.path.split(tpl_path)
return jinja2.Environment(
loader=jinja2.FileSystemLoader(path or './')
).get_template(filename).render(context)
# Application logic
def iffse_index(request):
insta_post = request.args.get('p', '')
html_ = render_jinja2('./templates/index.html', {'INSTA_POS_ID': insta_post})
return response.html(html_)
def short_chain(request: Request, short_chain: str):
"""
?????App??
:param request:
:param short_chain: ???
:return:
"""
session = Session()
query = DB.model_exists(session, AppModel, short_chain_uri_=short_chain)
if not query:
raise BadRequest('not find short chain: {}'.format(short_chain))
model = query.one()
url = '{}/#/app/{}'.format(Config.url, model.id)
# return redirect('/#/app/{}'.format(model.id))
return html('''
<html>
<header>
</header>
<body style="padding: 30px">
<div>???...</div>
<a href='{0}'>???????????</a>
</body>
<script>
setTimeout("location.href='{0}'", 2000);
</script>
</html>
'''.format(url))