Beispiel #1
0
class Video(db.Model):
    __tablename__ = "videos"
    id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.String(30))
    path = db.Column(db.String(120), default="")
    desc = db.Column(db.String(400), default="")
    author_id = db.Column(db.Integer, db.ForeignKey("users.id"))
    has_voted = db.Column(db.Boolean, default=False)
    is_owner = db.Column(db.Boolean, default=False)
    votes = db.relationship("Vote")
    created_date = db.Column(db.DateTime, default=datetime.datetime.utcnow())
    updated_date = db.Column(db.DateTime, default=datetime.datetime.utcnow())
    tags = db.relationship('Tag', secondary=videotags)

    def __init__(self, title="", path="", desc="", tags=tags):
        self.title = title
        self.path = path
        self.desc = desc
        self.created_date = datetime.datetime.utcnow()

    def add_tags(self, tag_names):
        for tag_name in list(set(tag_names)):
            t = Tag.get_or_create(tag_name)
            self.tags.append(t)
            db.session.add(t)
        db.session.commit()

    def vote_up(self, user_id):
        vote = Vote()
        vote.user_id = user_id
        self.votes.append(vote)
        db.session.add(vote)
        db.session.commit()

    def save(self):
        try:
            db.session.add(self)
            db.session.commit()
        except:
            db.session.flush()
            db.session.rollback()

    def __repr__(self):
        return "<Video id:{0} title:{1} voted:{2}>".format(
            self.id, self.title, self.has_voted)

    @classmethod
    def load(cls, new_db):
        """
        change db for production
        """
        global db
        db = new_db
Beispiel #2
0
class Tag(db.Model):
    __tablename__ = "tags"
    id = db.Column(db.Integer, primary_key=True)
    # videos = db.relationship('Video', secondary=videotags)

    title = db.Column(db.String(30))

    videos = db.relationship("Video", secondary=videotags)

    def __init__(self, title):
        self.title = title

    def __repr__(self):
        return "<Tag:{0},title:{1}>".format(self.id, self.title)

    @classmethod
    def get_or_create(cls, tag_name):
        t = db.session.query(Tag).filter_by(title=tag_name).first()
        if t is None:
            t = Tag(tag_name)
            try:
                db.session.add(t)
                db.session.commit()
            except:
                print("err")
                db.session.flush()
                db.session.rollback()
        return t
Beispiel #3
0
class User(db.Model):
    __tablename__ = "users"
    id = db.Column(db.Integer, primary_key=True)
    email = db.Column(db.String(80), unique=True)
    name = db.Column(db.String(30))
    videos = db.relationship("Video")

    def __init__(self, name, email):
        self.name = name
        self.email = email

    def save(self):
        try:
            db.session.add(self)
            db.session.commit()
        except:
            db.session.flush()
            db.session.rollback()
        print(self.id)

    @classmethod
    def load(cls, new_db):
        """
        change db for production
        """
        global db
        db = new_db
Beispiel #4
0
class Broker(IDModel):

    event_target = "ctl00$DefaultContent$RadGridLists$ctl00$ctl06$ctl00"
    target_file = "Entities.txt"

    legal_name = db.Column(db.String(100), nullable=True)

    phone = db.Column(db.String(20), nullable=False)
    fax = db.Column(db.String(20), nullable=True)

    address1 = db.Column(db.String(75), nullable=False)
    address2 = db.Column(db.String(75), nullable=True)

    city = db.Column(db.String(50), nullable=False)
    zip = db.Column(db.Integer, nullable=False)
    state = db.Column(db.String(2), nullable=False)

    realtors = db.relationship("Realtor")
Beispiel #5
0
class User(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(254),
                         nullable=False,
                         unique=True,
                         index=True)
    password = db.Column(db.String(60))
    name = db.Column(db.String(254),
                     nullable=False,
                     default="",
                     server_default="")
    email = db.Column(db.String(254),
                      nullable=False,
                      default="",
                      server_default="")
    active = db.Column(db.Boolean,
                       nullable=False,
                       default=False,
                       server_default=expression.true())

    groups = db.relationship(Group,
                             lambda: user_group,
                             backref=db.backref("users"))
class User(db.Model):
    __tablename__ = "users"
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(30))
    videos = db.relationship("Video")
    description = db.Column(db.String(140))