class Comment(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    date = db.Column(db.DateTime, nullable=False, default=datetime.utcnow)
    content = db.Column(db.Text, nullable=False)
    parent_id = db.Column(db.Integer,
                          db.ForeignKey('comment.id'),
                          nullable=True)
    post_id = db.Column(db.Integer, db.ForeignKey('post.id'), nullable=False)
    author_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)
    parent = db.relationship('Comment',
                             backref='comment_parent',
                             remote_side=id,
                             lazy=True)

    def __repr__(self):
        return f"Post('{self.date}', '{self.content}')"
Exemple #2
0
class Comment(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    post_id = db.Column('post_id', db.Integer,
                        db.ForeignKey('post.id', ondelete="CASCADE"))
    name = db.Column(db.Text)
    text = db.Column(db.Text)
    datetime = db.Column(db.DateTime, default=datetime.now())
Exemple #3
0
class Post(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.String(100), nullable=False)
    date_posted = db.Column(db.DateTime,
                            nullable=False,
                            default=datetime.utcnow)
    content = db.Column(db.Text, nullable=False)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)

    def __repr__(self):
        return f"Post('{self.title}', '{self.date_posted}')"

    def save_post(self):
        '''
        Function that saves posts
        '''
        db.session.add(self)
        db.session.commit()

    @classmethod
    def get_all_posts(cls):
        '''
        Function that queries the database and returns all the posts
        '''
        return Post.query.all()

    @classmethod
    def delete_post(cls, id):
        '''
        '''
        db.session.delete()
        db.session.commit()
Exemple #4
0
class Post(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    body = db.Column(db.String(140))
    timestamp = db.Column(db.DateTime, index=True, default=datetime.utcnow())
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'))
    topic_id = db.Column(db.Integer, db.ForeignKey('topic.id'))
    active = db.Column(db.Integer, default=1)
    parent = db.Column(db.Integer, db.ForeignKey('post.id'), default=None)

    def __repr__(self):
        return f"<Post: {self.body}>"

    def __str__(self):
        return f"<Post: {self.body}, Author: {self.author}>"

    def get_parent(self):
        return Post.query.get(self.parent)
Exemple #5
0
class Post(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.String(100), nullable=False)
    date_posted = db.Column(db.DateTime,
                            nullable=False,
                            default=datetime.utcnow)
    content = db.Column(db.Text, nullable=False)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)
Exemple #6
0
class CategoryPost(BaseModel):
    id = db.Column(db.Integer, primary_key=True)
    category_id = db.Column(db.Integer,
                            db.ForeignKey('category.id', ondelete='CASCADE'),
                            nullable=False,
                            index=True)
    post_id = db.Column(db.Integer,
                        db.ForeignKey('post.id', ondelete='CASCADE'),
                        nullable=False,
                        index=True)

    __table_args__ = (
        (db.UniqueConstraint('category_id', 'post_id')),
        {
            'sqlite_autoincrement': True
        },
    )
Exemple #7
0
class User(db.Model, UserMixin):
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(20), nullable=False)
    email = db.Column(db.String(20), unique=True, nullable=False)
    password = db.Column(db.String(60), nullable=False)
    image_profile = db.Column(db.String(60), default='default.jpg')
    role_id = db.Column(db.Integer, db.ForeignKey('role.id'), nullable=False,  default=3)   
    post = db.relationship('Artikel', backref='author', lazy=True)
Exemple #8
0
class PageElement(db.Model):
    """
        Class for Page class elements.

        This class has a parent_page property that links this
        class with the Page class in the database.
    """
    id = db.Column(db.Integer, primary_key=True)
    author_id = db.Column(db.ForeignKey(User.uid), nullable=False)
    parent = db.Column(db.ForeignKey(Page.path_name), nullable=False)
    title = db.Column(db.String(80), nullable=False)
    body = db.Column(db.TEXT(16777216), nullable=False)
    created_at = db.Column(db.DateTime,
                           nullable=False,
                           default=datetime.utcnow)
    parent_page = db.relationship(Page, lazy="joined", backref="page")
    author = db.relationship(User, lazy="joined", backref="pageElement")
Exemple #9
0
class Post(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    body = db.Column(db.String(140))
    timestamp = db.Column(db.DateTime)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'))

    def __repr__(self):
        return '<Post %r>' % self.body
Exemple #10
0
class Comment(db.Model):
	id=db.Column(db.Integer,primary_key=True)
	name=db.Column(db.String(50),nullable=False)
	comment=db.Column(db.Text,nullable=False)
	date_posted=db.Column(db.DateTime,nullable=False,default=datetime.utcnow)
	email=db.Column(db.String(50),nullable=False)
	replies=db.relationship("Reply",backref="replied")
	post_id=db.Column(db.Integer,db.ForeignKey("post.id"))
Exemple #11
0
class PostBackup(db.Model):

    id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.String(150), nullable=False)
    content = db.Column(db.Text(500), nullable=False)
    #dated_posted= db.Column(db.DateTime,default =datetime.now)
    date_posted = db.Column(db.DateTime, default=datetime.now)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)
Exemple #12
0
class Gruppo(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    nome = db.Column(db.String(100), nullable=False)
    activities = db.relationship('Activity', secondary=linksag, backref='assegnati', lazy=True)
    race_id = db.Column(db.Integer, db.ForeignKey('race.id'), nullable=False)
    marshals = db.relationship('Marshal', secondary=linksgm, backref='grs', lazy=True)
    routines = db.relationship('Routine', secondary=linksgr, backref='following', lazy=True)
    payments = db.relationship('Payment', secondary=linksgp, backref='paying', lazy=True)
    coordinatore = db.Column(db.Integer, db.ForeignKey('marshal.id'), nullable=True)
    cp=db.Column(db.Integer, default=0)
    cpp=db.Column(db.Integer, default=0)
    cpq=db.Column(db.Integer, default=0)



    def __repr__(self):
        return "Gruppo ('{self.id}')"
Exemple #13
0
class Followers(db.Model):
    __tablename__ = 'Followers'

    id = db.Column(db.Integer, primary_key=True)
    follower_id = db.Column(db.Integer,
                            db.ForeignKey('users.id'),
                            nullable=False)
    followed_id = db.Column(db.Integer,
                            db.ForeignKey('users.id'),
                            nullable=False)

    def __init__(self, follower_id, followed_id):
        self.follower_id = follower_id
        self.followed_id = followed_id

    def __repr__(self):
        return f"Follower ID: {self.follower_id}\tFollowed ID: {self.followed_id}"
Exemple #14
0
class Post(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    body = db.Column(db.String(140))
    timestamp = db.Column(db.DateTime, index=True, default=datetime.utcnow)
    user_id = db.Column(db.Integer, db.ForeignKey("user.id"))

    def __repr__(self):
        return "<Post {}>".format(self.body)
Exemple #15
0
class Post(db.Model):
    __tablename__ = 'posts'
    id = db.Column(db.Integer, primary_key=True)
    body = db.Column(db.String(140))
    timestamp = db.Column(db.DateTime, index=True, default=datetime.utcnow)
    user_id = db.Column(db.Integer, db.ForeignKey('users.id'))

    def __repr__(self):
        return f'Post {self.body}'
Exemple #16
0
class Itemscart(db.Model):
    i = db.Column(db.Integer, primary_key=True)
    id = db.Column(db.Integer)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)

    # count_of= db.relationship('Count', backref='count_of', lazy=True)

    def __repr__(self):
        return f"ItemsCart('{self.id}')"
Exemple #17
0
class Comment(db.Model):
    """评论"""
    __tablename__ = "comment"  # 表名
    id = db.Column(db.Integer, primary_key=True)  # 评论id 主键
    content = db.Column(db.Text, nullable=False)  # 评论内容 不允许为空
    article_id = db.Column(db.Integer, db.ForeignKey("article.id"))  # 评论文章的id 外键
    parent_id = db.Column(db.Integer, db.ForeignKey("comment.id"))  # 父评论id 自关联外键
    nick_name = db.Column(db.String(64), nullable=False)  # 用户名,不允许为空
    email = db.Column(db.String(48), nullable=True)  # 邮箱
    url = db.Column(db.String(48), nullable=True, default="#")  # 网址
    reply_name = db.Column(db.String(64))  # 被回复人id
    create_time = db.Column(db.DateTime, default=datetime.now)  # 创建时间

    parent = db.relationship("Comment", remote_side=[id],
                             backref=db.backref('childs', lazy='dynamic'))

    def __repr__(self):
        return self.content
Exemple #18
0
class Post(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.String(100), nullable=False)
    date_posted = db.Column(db.DateTime(),
                            nullable=False,
                            default=datetime.utcnow)
    content = db.Column(db.Text, nullable=False)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)
    comments = db.relationship('Comment', backref='post', lazy=True)
Exemple #19
0
class Post(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.String(100), nullable=False)
    date = db.Column(db.DateTime, nullable=False, default=datetime.utcnow)
    content = db.Column(db.Text, nullable=False)
    user = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)

    def __repr__(self):
        return u"User {0}, {1}".format(self.title, self.date)
Exemple #20
0
class Post(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.String(100), nullable=False)
    date_posted = db.Column(db.DateTime, nullable=False, default=datetime.utcnow)
    content = db.Column(db.Text, nullable=False)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)

    def __repr__(self):
        return f"Post('{self.title}', '{self.date_posted}')"
Exemple #21
0
class Comment(db.Model, LikableModel):
    """Model for comments"""

    id = db.Column(db.Integer, primary_key=True)
    user_id = db.Column(db.Integer,
                        db.ForeignKey("user.id", ondelete="CASCADE"),
                        index=True)
    post_id = db.Column(db.Integer,
                        db.ForeignKey("post.id", ondelete="CASCADE"),
                        index=True)
    body = db.Column(db.Text)
    datetime = db.Column(db.DateTime, default=datetime.now())
    marks = db.relationship('CommentLike', backref='comment', lazy="dynamic")
    user = db.relationship('User', backref='comments', lazy=True)

    # Parameters for Likable model
    like_model = CommentLike
    like_model_fk = "comment_id"
Exemple #22
0
class Post(db.Model):
    post_id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.String(200), unique=True)
    author = db.Column(db.String(40))
    date_posted = db.Column(db.DateTime, index=True, default=datetime.utcnow)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'))
    post = db.Column(db.Text)
    image_url = db.Column(db.String(400))
    likes = db.Column(db.Integer, default=0)
Exemple #23
0
class Post(db.Model):
	id = db.Column(db.Integer, primary_key=True)
	title = db.Column(db.String(120), nullable=False)
	date = db.Column(db.DateTime, nullable=False, default=datetime.datetime.now)
	content = db.Column(db.Text, nullable=False)
	user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)

	def __repr__(self):
		return f'{self.__class__.__name__}({self.id}, {self.title[:30]}, {self.date})'
Exemple #24
0
class Topic(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(64))
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'))
    timestamp = db.Column(db.DateTime, index=True, default=datetime.utcnow())
    posts = db.relationship('Post', backref='topic', lazy='dynamic')

    def __repr__(self):
        return f"<Topic: {self.name}>"
Exemple #25
0
class Comment(db.Model):
    __tablename__ = 'comments'

    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(64), unique=False)
    email = db.Column(db.String(64), unique=False)
    message = db.Column(db.String(250), index=False, nullable=False)
    post_id = db.Column(db.Integer, db.ForeignKey('post.id'), nullable=False)
    date_posted = db.Column(db.DateTime())
Exemple #26
0
class Comment(db.Model):
    id = db.Column(db.Integer(), primary_key=True)
    name = db.Column(db.String(30), nullable=False)
    text = db.Column(db.Text())
    data = db.Column(db.DateTime())
    post_id = db.Column(db.Integer, db.ForeignKey('post.id'))

    def __repr__(self):
        return '<Comment %s>' % self.name
Exemple #27
0
class HomeWork(db.Model):
    __tablename__ = 'homework'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(32))
    unique_name = db.Column(db.String)
    path = db.Column(db.String)
    timestamp = db.Column(db.DateTime, index=True, default=datetime.now)
    user_id = db.Column(db.Integer, db.ForeignKey("user.id"))
    solutions = db.relationship("Solution", backref="problem", lazy="dynamic")
Exemple #28
0
class Project(BaseModel):
    id = db.Column(db.Integer, primary_key=True)
    # TODO What happens if I delete the category to which this project belongs?
    # Do I want to delete cascade? I'll use to SET NULL for now
    category_id = db.Column(db.Integer,
                            db.ForeignKey('category.id', ondelete='SET NULL'),
                            nullable=False)

    __table_args__ = ({'sqlite_autoincrement': True}, )
Exemple #29
0
class ProjectPost(BaseModel):
    id = db.Column(db.Integer, primary_key=True)
    project_id = db.Column(db.Integer,
                           db.ForeignKey('project.id', ondelete='CASCADE'),
                           nullable=False)
    post_id = db.Column(db.Integer,
                        db.ForeignKey('post.id', ondelete='CASCADE'),
                        nullable=False)
    # an order_no of 0 indicates the introduction post to the project and the /projects/<name>/ url will resolve there
    order_no = db.Column(db.Integer, nullable=False)

    __table_args__ = (
        db.UniqueConstraint('project_id', 'post_id'),
        # Should I enforce this at the DB layer or at the application layer ?
        db.UniqueConstraint('project_id', 'order_no'),
        {
            'sqlite_autoincrement': True
        },
    )
Exemple #30
0
class Post(SearchableMixin, db.Model):
    __searchable__ = ['body']

    id = db.Column(db.Integer, primary_key=True)
    body = db.Column(db.String(140))
    timestamp = db.Column(db.DateTime, index=True, default=datetime.utcnow)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'))

    def __repr__(self):
        return '<User {}>'.format(self.username)