Я использовал flask-sqlalchemy
для создания модели для своей базы данных
class User(db.Model, UserMixin):
"""A user who has an account on the website."""
__tablename__ = 'users'
id = db.Column(db.Integer, primary_key=True, autoincrement=True)
first_name = db.Column(db.String, nullable=False)
last_name = db.Column(db.String, nullable=False)
# here are some irrelatvant columns ...
image_file = db.Column(db.String, nullable=False, default='default.jpg')
Я создаю изображение по умолчанию для изображения профиля пользователя как жестко запрограммированное изображение, сохраненное в папке static/img
.Тем не менее, я хотел бы использовать gravatar, который использовал хэш-версию электронной почты пользователя для создания изображения профиля github по умолчанию.
У меня есть функция
def avatar(self, size=128):
digest = md5(self.email.lower().encode('utf-8')).hexdigest()
return 'https://www.gravatar.com/avatar/{}?d=identicon&s={}'.format(digest, size)
Я хотел бы использовать возвратзначение из функции avatar()
в качестве изображения по умолчанию.Я пытался передать avatar
и self.avatar
в качестве аргумента для default=
.Однако они оба не работают.