typeset-blog/app/models.py

53 lines
1.4 KiB
Python
Raw Normal View History

2017-08-09 06:43:31 +00:00
# -*- encoding: utf-8 -*-
"""
Python Aplication Template
Licence: GPLv3
"""
from app import db
class Post(db.Model):
id = db.Column(db.Integer, primary_key=True)
title = db.Column(db.String(80))
2017-08-09 10:41:26 +00:00
pub_date = db.Column(db.DateTime)
2017-08-09 10:41:26 +00:00
def __init__(self, title,paragraphs, pub_date=None):
self.title = title
2017-08-09 10:41:26 +00:00
if pub_date is None:
pub_date = datetime.utcnow()
self.pub_date = pub_date
self.paragraphs = paragraphs
def __repr__(self):
return '<Post %r>' % self.title
class Paragraph(db.Model):
id = db.Column(db.Integer, primary_key=True)
2017-08-09 06:43:31 +00:00
body = db.Column(db.Text)
post_id = db.Column(db.Integer, db.ForeignKey('post.id'))
2017-08-09 10:41:26 +00:00
db.relationship('Post',backref=db.backref('paragraphs', lazy='dynamic'))
2017-08-09 06:43:31 +00:00
def __init__(self, body,post_id):
2017-08-09 06:43:31 +00:00
self.body = body
self.post_id = post_id
2017-08-09 06:43:31 +00:00
def __repr__(self):
return '<Post %r>' % self.title
class Comment(db.Model):
2017-08-09 06:43:31 +00:00
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(50))
message = db.Column(db.String(140))
paragraph_id = db.Column(db.Integer, db.ForeignKey('paragraph.id'))
2017-08-09 10:41:26 +00:00
post_id = db.Column(db.Integer, db.ForeignKey('post.id'))
db.relationship('Paragraph',backref=db.backref('comments', lazy='dynamic'))
2017-08-09 06:43:31 +00:00
def __init__(self, name,message):
2017-08-09 06:43:31 +00:00
self.name = name
self.message = message
2017-08-09 06:43:31 +00:00
def __repr__(self):
return '<Comment %r>' % self.name
db.create_all()