Python博客搭建

python搭建博客问题汇总

环境

python版本:2.7
web框架:Flask
orm框架:flask_sqlalchemy
前端框架:Bootstrap

问题

问题1:如何限制访问受保护的资源(需登录)

flask中拦截用户登录修饰符decorator的使用
https://segmentfault.com/a/1190000006658289
http://blog.csdn.net/kongxx/article/details/51654751
http://blog.csdn.net/kuangshp128/article/details/65629533

问题2:如何书写Markdown格式的文章。

flask markdown用法:
http://blog.csdn.net/jhgjdfhre/article/details/52253630
说明一下:如果要代码语法高亮,参考:http://pythonhosted.org/Markdown/extensions/code_hilite.html
1.安装Pygments
2.使用pygmentize -S default -f html -a .codehilite > styles.css生成styles.css
3.复制styles.css到你的工程中。

问题3:flask框架数据库和页面分页

flask数据分页:
http://baagee.vip/index/article/id/63.html
https://www.jianshu.com/p/d5224b90afeb
http://www.jb51.net/article/118715.htm

问题4:Flask框架使用的模板引擎Jinja2用法。

Jinja2文档:
http://docs.jinkan.org/docs/jinja2/templates.html

问题5:Flask框架Jinja2日期格式化

新建一个日期处理函数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# file:jinja_filter.py
# coding: utf-8
__author__ = 'j.tommy'
import datetime
def datetimeformat(value, format='%Y-%m-%d'):
"""
将float类型的日期格式化为字符串格式。
:param value: 日期(float类型)
:param format: 日期格式
:return:
"""
d = datetime.datetime.fromtimestamp(value)
print d,type(d)
return d.strftime(format)
```
在app中指定过滤器
```python
# 用于页面模板进行日期格式化
app.jinja_env.filters['datetimeformat'] = jinja_filters.datetimeformat

页面使用

1
{{blog.created_at|datetimeformat('%Y-%m-%d %H:%M')}}

python博客代码:https://gitee.com/qincd/awesome-python-blog

Donny wechat
欢迎关注我的个人公众号
打赏,是超越赞的一种表达。
Show comments from Gitment