This commit is contained in:
dave 2018-09-09 14:10:42 -07:00
parent e10ff6b2c5
commit f75283b1a2
1 changed files with 29 additions and 1 deletions

View File

@ -1,7 +1,6 @@
from sqlalchemy import Column, Integer, String, DateTime, Unicode, DECIMAL, ForeignKey from sqlalchemy import Column, Integer, String, DateTime, Unicode, DECIMAL, ForeignKey
from sqlalchemy.orm import relationship from sqlalchemy.orm import relationship
from sqlalchemy.ext.declarative import declarative_base from sqlalchemy.ext.declarative import declarative_base
import uuid import uuid
@ -19,6 +18,9 @@ class PhotoSet(Base):
files = relationship("Photo", back_populates="set") files = relationship("Photo", back_populates="set")
title = Column(String)
description = Column(String)
class Photo(Base): class Photo(Base):
__tablename__ = 'files' __tablename__ = 'files'
@ -36,3 +38,29 @@ class Photo(Base):
hash = Column(String(length=64), unique=True) hash = Column(String(length=64), unique=True)
path = Column(Unicode) path = Column(Unicode)
format = Column(String(length=64)) # TODO how long can a mime string be format = Column(String(length=64)) # TODO how long can a mime string be
class Tag(Base):
__tablename__ = 'tags'
id = Column(Integer, primary_key=True)
uuid = Column(Unicode, default=lambda: str(uuid.uuid4()))
created = Column(DateTime)
modified = Column(DateTime)
title = Column(String)
slug = Column(String)
description = Column(String)
entries = relationship("TagItem", back_populates="tag")
class TagItem(Base):
__tablename__ = 'tag_items'
id = Column(Integer, primary_key=True)
tag_id = Column(Integer, ForeignKey("tags.id"))
tag = relationship("Tag", back_populates="entries", foreign_keys=[tag_id])
item_uuid = Column(String, unique=True)
order = Column(Integer, default=0)