Flask常用API

Flask常用API

1、os

​ 拼接路径:pathname = os.path.join(basepath, filename)
获得文件名后缀:suffix = os.path.splitext(filename)[1]
读取指定环境变量:os.environ.get(‘SECRET_KEY’)
获得当前工作路径:os.getcwd()

2、PIL(需要安装pillows 模块)

​ 打开图片对象:img = Image.open(pathname)
设置缩略图尺寸:img.thumbnail((128, 128))
保存文件:img.save(pathname)

3、str

​ 指定次数地向前分割字符串:retList = filename.rsplit(’.’, 1)

4、分页

​ pagination = Posts.query.paginate(2, per_page=5, error_out=False)
posts = pagination.items
Pagination对象
属性
items:当前页的所有数据
page:当前页码
pages:总页码数
total:总记录数
per_page:每页多少条
prev_num:上一页的页码
next_num:下一页的页码
has_prev:是否有上一页
has_next:是否有下一页
方法
prev:上一页的分页对象
next:下一页的分页对象
iter_pages:是一个迭代器,返回的是在分页导航条上显示的页码 显示不完的页码会返回None
分页宏函数
分页样式参见bootstrap官网

{% macro show_pagination(pagination,endpoint) %} 
    <nav aria-label="Page navigation"> 
        <ul class="pagination"> 


            <li {% if not pagination.has_prev %}class="disabled"{% endif %}> 
                <a {% if pagination.has_prev %}href="{{ url_for(endpoint,page=pagination.prev_num,**kwargs) }}" 
                   {% else %}href="#"{% endif %} aria-label="Previous"> 
                    <span aria-hidden="true">&laquo;</span> 
                </a> 
            </li> 

            {% for i in pagination.iter_pages() %} 
                {% if i %} 
                    <li {% if i==pagination.page %}class="active"{% endif %}> 
                        <a href="{{ url_for(endpoint,page=i,**kwargs) }}">{{ i }}</a> 
                    </li> 
                {% else %} 
                    <li><a href="#">...</a></li> 
                {% endif %} 
            {% endfor %} 

            <li {% if not pagination.has_next %}class="disabled"{% endif %}> 
                <a {% if pagination.has_next %}href="{{ url_for(endpoint,page=pagination.next_num,**kwargs) }}" 
                   {% else %}href="#"{% endif %} aria-label="Next"> 
                    <span aria-hidden="true">&raquo;</span> 
                </a> 
            </li> 

        </ul> 
    </nav> 
{% endmacro %}

【后记】:如果文章对您有帮助,打赏下呗。微信 1257309054,欢迎交流学习*_*
微信
在这里插入图片描述
支付宝
在这里插入图片描述

posted @ 2018-06-29 17:30  轻松学编程  阅读(150)  评论(0编辑  收藏  举报