ShowTextMetadata = TextMetadata.make_model(
    Show,
    'schedule',
    'ShowTextMetadata',
    getattr(settings, 'SHOW_TEXT_METADATA_DB_TABLE', None),
    getattr(settings, 'SHOW_TEXT_METADATA_DB_ID_COLUMN', None),
    fkey=Show.make_foreign_key(),
)


ShowImageMetadata = ImageMetadata.make_model(
    Show,
    'schedule',
    'ShowImageMetadata',
    getattr(settings, 'SHOW_IMAGE_METADATA_DB_TABLE', None),
    getattr(settings, 'SHOW_IMAGE_METADATA_DB_ID_COLUMN', None),
    fkey=Show.make_foreign_key(),
)


ShowPodcastLink = PodcastLink.make_model(
    Show,
    'schedule',
    'ShowPodcastLink',
    getattr(settings, 'SHOW_PODCAST_LINK_DB_TABLE', None),
    getattr(settings, 'SHOW_PODCAST_LINK_DB_ID_COLUMN', None),
    fkey=Show.make_foreign_key()
)
Esempio n. 2
0
        except IndexError:
            block = None
        return block


ShowTextMetadata = TextMetadata.make_model(
    Show,
    'schedule',
    'ShowTextMetadata',
    getattr(settings, 'SHOW_TEXT_METADATA_DB_TABLE', None),
    getattr(settings, 'SHOW_TEXT_METADATA_DB_ID_COLUMN', None),
    fkey=Show.make_foreign_key(),
)

ShowImageMetadata = ImageMetadata.make_model(
    Show,
    'schedule',
    'ShowImageMetadata',
    getattr(settings, 'SHOW_IMAGE_METADATA_DB_TABLE', None),
    getattr(settings, 'SHOW_IMAGE_METADATA_DB_ID_COLUMN', None),
    fkey=Show.make_foreign_key(),
)

ShowPodcastLink = PodcastLink.make_model(
    Show,
    'schedule',
    'ShowPodcastLink',
    getattr(settings, 'SHOW_PODCAST_LINK_DB_TABLE', None),
    getattr(settings, 'SHOW_PODCAST_LINK_DB_ID_COLUMN', None),
    fkey=Show.make_foreign_key())
    ),
    getattr(
        settings, 'PACKAGE_TEXT_METADATA_DB_ID_COLUMN',
        None
    ),
    fkey=Package.make_foreign_key(),
)


PackageImageMetadata = ImageMetadata.make_model(
    Package,
    'metadata',
    'PackageImageMetadata',
    getattr(
        settings, 'PACKAGE_IMAGE_METADATA_DB_TABLE',
        None
    ),
    getattr(
        settings, 'PACKAGE_IMAGE_METADATA_DB_ID_COLUMN',
        None
    ),
    fkey=Package.make_foreign_key(),
)


class PackageEntry(AttachableMixin,
                   EffectiveRangeMixin,
                   CreatableMixin,
                   ApprovableMixin):
    """
    An attachable that allows zero or more packages to be assigned to
    an arbitrary model for use in its metadata resolution.