SocialNetwork
31 строка · 1020.0 Байт
1import datetime
2import sqlalchemy
3from dateutil.relativedelta import relativedelta
4from flask_login import UserMixin
5from sqlalchemy import orm
6from sqlalchemy_serializer import SerializerMixin
7from werkzeug.security import generate_password_hash, check_password_hash
8from pytils import dt
9
10import humanize
11
12from .db_session import SqlAlchemyBase
13
14
15class Post(SqlAlchemyBase, SerializerMixin):
16__tablename__ = 'posts'
17
18id = sqlalchemy.Column(sqlalchemy.Integer,
19primary_key=True, autoincrement=True)
20
21text = sqlalchemy.Column(sqlalchemy.String, nullable=False)
22created_date = sqlalchemy.Column(sqlalchemy.DateTime, default=datetime.datetime.now)
23
24user_id = sqlalchemy.Column(sqlalchemy.Integer,
25sqlalchemy.ForeignKey("users.id"))
26user = orm.relation('User')
27
28likes = sqlalchemy.Column(sqlalchemy.Integer, default=0)
29
30def get_formatted_date(self):
31return humanize.naturaltime(datetime.datetime.now() - self.created_date)
32
33