flask avatars随机获得头像(flask 82)

2019-08-20 16:54:36 浏览数 (1)

py

from flask import Flask, render_template from flask_avatars import Avatars

app = Flask(name) avatars = Avatars(app)

html

<p>{% raw %}{{ avatars.robohash('jack') }}{% endraw %}: <img src="{{ avatars.robohash('jack') }}"></p> <p>{% raw %}{{ avatars.robohash('peter', size='200') }}{% endraw %}: <img src="{{ avatars.robohash('peter', size='50') }}"></p>


另一种生成随机图像的方式

生成随机图案头像Identicon Gravatar服务可能会有不稳定的情况,这种情况下,你可以在本地为用户生成头像(identicon),下面是一个简单的示例:

app.config['AVATARS_SAVE_PATH '] = 'the/path/to/save/avatar'

avatar = Identicon() filenames = avatar.generate(text=‘一串唯一字符’) avatar.generate()会根据传入的随机字符创建三个尺寸(可以通过配置变量AVATARS_SIZE_TUPLE自定义)的头像,保存到指定的位置,并返回三个头像文件名。你可以将这个文件名保存到数据库中,并创建一个视图函数来提供头像文件:

from flask import send_form_directory, current_app

@app.route('/avatars/<path:filename>') def get_avatar(filename): return send_from_directory(current_app.config['AVATARS_SAVE_PATH'], filename)

0 人点赞