make all JSONEncoded columns mutable

This commit is contained in:
Rodney Ewing 2013-08-27 11:53:42 -07:00
parent 7f9d3ca7c9
commit f4f84297ef
2 changed files with 5 additions and 3 deletions

View File

@ -26,7 +26,7 @@ from sqlalchemy.sql import and_
from migrate.changeset.constraint import UniqueConstraint
from mediagoblin.db.extratypes import JSONEncoded, MutationDict
from mediagoblin.db.extratypes import JSONEncoded
from mediagoblin.db.migration_tools import RegisterMigration, inspect_table
from mediagoblin.db.models import MediaEntry, Collection, User, MediaComment
@ -502,7 +502,7 @@ def add_file_metadata(db):
metadata = MetaData(bind=db.bind)
media_file_table = inspect_table(metadata, "core__mediafiles")
col = Column('file_metadata', MutationDict.as_mutable(JSONEncoded))
col = Column('file_metadata', JSONEncoded)
col.create(media_file_table)
db.commit()

View File

@ -48,6 +48,8 @@ from migrate import changeset
_log = logging.getLogger(__name__)
MutationDict.associate_with(JSONEncoded)
class User(Base, UserMixin):
"""
@ -393,7 +395,7 @@ class MediaFile(Base):
nullable=False)
name_id = Column(SmallInteger, ForeignKey(FileKeynames.id), nullable=False)
file_path = Column(PathTupleWithSlashes)
file_metadata = Column(MutationDict.as_mutable(JSONEncoded))
file_metadata = Column(JSONEncoded)
__table_args__ = (
PrimaryKeyConstraint('media_entry', 'name_id'),