我正在尝试在我的项目中安装 imagestore 应用程序。默认模型创建成功,所有其他部分正常工作。
但是,它具有扩展基本(抽象)模型并通过一些复杂机制创建自己的功能的功能。这是我的模型:
from django.db import models
from imagestore.models.bases.album import BaseAlbum
class Newalbum(BaseAlbum):
title = models.CharField("title", max_length=128)
class Meta(BaseAlbum.Meta):
app_label = "imagestore"
abstract = False
我的设置中还有一个字符串IMAGESTORE_ALBUM_MODEL = 'art.models.Newalbum'
。当我运行 syncdb 时,它告诉我后端模块“art.models”没有定义“Newalbum”类。(“模块”对象没有属性“新专辑”)。但当然它定义了。
而陌生感才刚刚开始。当我将调试语句放在 imagestore 试图获取我的模型的地方时,它会打印正确的模块(已经导入)和正确的类名(字符串)。但!dir(mod)
仅打印出现在“from imagestore.models.bases.album import BaseAlbum”之前的变量。在上面的示例中,仅显示“models”和默认下划线属性。为什么?关于导入模块我不知道什么?
我已经尝试在设置属性、django 版本(和所需应用程序)、app_label 等的许多尴尬组合中安装它。当我没有在我的设置中添加 IMAGESTORE_ALBUM_MODEL 时,它会创建表,但是这个模型没有任何 BaseClass 的行为。那么,我做错了什么?