Add models and Add fake data
This commit is contained in:
32
models.py
32
models.py
@ -1,15 +1,19 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Librarys
|
||||
import os
|
||||
from flask import Flask
|
||||
from datetime import datetime
|
||||
from flask_sqlalchemy import SQLAlchemy
|
||||
from flask_script import Manager
|
||||
from flask_migrate import Migrate, MigrateCommand
|
||||
from dotenv import load_dotenv, find_dotenv
|
||||
|
||||
load_dotenv(find_dotenv())
|
||||
|
||||
app = Flask(__name__)
|
||||
|
||||
# Settings
|
||||
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///database.sqlite'
|
||||
app.config['SQLALCHEMY_DATABASE_URI'] = os.environ.get('DATABASE_URI')
|
||||
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
|
||||
|
||||
# Variables
|
||||
@ -28,7 +32,7 @@ class User(db.Model):
|
||||
|
||||
id = db.Column(db.Integer, primary_key=True)
|
||||
username = db.Column(db.String(100))
|
||||
email = db.Column(db.String(200))
|
||||
mail = db.Column(db.String(200))
|
||||
password = db.Column(db.String(106))
|
||||
created_at = db.Column(
|
||||
db.DateTime, nullable=False, default=datetime.utcnow)
|
||||
@ -45,14 +49,25 @@ class News(db.Model):
|
||||
id = db.Column(db.Integer, primary_key=True)
|
||||
title = db.Column(db.String(100))
|
||||
link = db.Column(db.String(500))
|
||||
user_id = db.Column(
|
||||
db.Integer, db.ForeignKey('users.id'), nullable=False)
|
||||
created_at = db.Column(
|
||||
db.DateTime, nullable=False, default=datetime.utcnow)
|
||||
|
||||
user_id = db.Column(
|
||||
db.Integer, db.ForeignKey('user.id'), nullable=False)
|
||||
# Relations
|
||||
user = db.relationship(
|
||||
'User', backref=db.backref('News', lazy=True))
|
||||
|
||||
@property
|
||||
def serialize(self):
|
||||
"""Return object data in easily serializeable format"""
|
||||
return {
|
||||
'id': self.id,
|
||||
'title': self.title,
|
||||
'link': self.link,
|
||||
'user_id': self.user_id
|
||||
}
|
||||
|
||||
def __repr__(self):
|
||||
return '<News Table {0}>'.format(self.title)
|
||||
|
||||
@ -64,11 +79,16 @@ class Comment(db.Model):
|
||||
__tablename__ = 'comments'
|
||||
id = db.Column(db.Integer, primary_key=True)
|
||||
text = db.Column(db.String(1000))
|
||||
news_id = db.Column(
|
||||
db.Integer, db.ForeignKey('news.id'), nullable=False)
|
||||
user_id = db.Column(
|
||||
db.Integer, db.ForeignKey('users.id'), nullable=False)
|
||||
created_at = db.Column(
|
||||
db.DateTime, nullable=False, default=datetime.utcnow)
|
||||
|
||||
news_id = db.Column(
|
||||
db.Integer, db.ForeignKey('news.id'), nullable=False)
|
||||
# Relations
|
||||
user = db.relationship(
|
||||
'User', backref=db.backref('Comment', lazy=True))
|
||||
news = db.relationship(
|
||||
'News', backref=db.backref('Comment', lazy=True))
|
||||
|
||||
|
Reference in New Issue
Block a user