收藏机构收藏模型样板。
glamkit-collections的Python项目详细描述
概述
此包包含SFMOMA网站和集合的通用代码 项目,例如:
- 抽象集合模型。
- 数据库路由器。
- 弹性搜索集成。
抽象和具体模型
必须实现每个抽象集合模型的具体版本 在项目中名为collection的应用程序中。
这将允许您为 每个项目中的模型(好像它们是代理模型),但没有 外键问题(如代理模型)。
即使多个项目使用不同的 具体的collection实现,只有一组迁移将 在collection_migrations应用程序中定义,并且可以应用它们 任何项目。
模型导入路径将相同,因此应该可以在 把它从项目中分解出来的一个不同的具体实现 进入一个独立的应用程序,然后用它替换另一个。
使用collectionapp的项目必须包含以下内容 设置以确保数据库在项目之间的一致性:
MIGRATION_MODULES = { 'collection': 'collection_migrations', }
这些迁移存储在顶层collection_migrations 包,而不是collection_models.migrations,因为 collection_models已安装到项目中,这会混淆 詹戈。
弹性搜索积分
安装collection_models.search应用程序并使用 index_collection填充搜索索引的管理命令:
$ ./manage.py index_collection