411: Add relationship and backrefs to media_data tables.
Adding proper relationship()s and especially backref()s will delete media_data rows along with the main MediaEntry. This fixes #411.
This commit is contained in:
parent
352a180765
commit
02f07bfe14
@ -18,8 +18,8 @@
|
||||
from mediagoblin.db.sql.base import Base
|
||||
|
||||
from sqlalchemy import (
|
||||
Column, Integer, Unicode, UnicodeText, DateTime, Boolean, ForeignKey,
|
||||
UniqueConstraint)
|
||||
Column, Integer, ForeignKey)
|
||||
from sqlalchemy.orm import relationship, backref
|
||||
|
||||
|
||||
class AsciiData(Base):
|
||||
@ -28,6 +28,8 @@ class AsciiData(Base):
|
||||
# The primary key *and* reference to the main media_entry
|
||||
media_entry = Column(Integer, ForeignKey('core__media_entries.id'),
|
||||
primary_key=True)
|
||||
get_media_entry = relationship("MediaEntry",
|
||||
backref=backref("ascii__media_data", cascade="all, delete-orphan"))
|
||||
|
||||
|
||||
DATA_MODEL = AsciiData
|
||||
|
@ -19,6 +19,7 @@ from mediagoblin.db.sql.base import Base
|
||||
|
||||
from sqlalchemy import (
|
||||
Column, Integer, Float, ForeignKey)
|
||||
from sqlalchemy.orm import relationship, backref
|
||||
from mediagoblin.db.sql.extratypes import JSONEncoded
|
||||
|
||||
|
||||
@ -28,6 +29,9 @@ class ImageData(Base):
|
||||
# The primary key *and* reference to the main media_entry
|
||||
media_entry = Column(Integer, ForeignKey('core__media_entries.id'),
|
||||
primary_key=True)
|
||||
get_media_entry = relationship("MediaEntry",
|
||||
backref=backref("image__media_data", cascade="all, delete-orphan"))
|
||||
|
||||
width = Column(Integer)
|
||||
height = Column(Integer)
|
||||
exif_all = Column(JSONEncoded)
|
||||
|
@ -19,6 +19,7 @@ from mediagoblin.db.sql.base import Base
|
||||
|
||||
from sqlalchemy import (
|
||||
Column, Integer, SmallInteger, ForeignKey)
|
||||
from sqlalchemy.orm import relationship, backref
|
||||
|
||||
|
||||
class VideoData(Base):
|
||||
@ -27,6 +28,9 @@ class VideoData(Base):
|
||||
# The primary key *and* reference to the main media_entry
|
||||
media_entry = Column(Integer, ForeignKey('core__media_entries.id'),
|
||||
primary_key=True)
|
||||
get_media_entry = relationship("MediaEntry",
|
||||
backref=backref("video__media_data", cascade="all, delete-orphan"))
|
||||
|
||||
width = Column(SmallInteger)
|
||||
height = Column(SmallInteger)
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user