社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Django

在django中测试时的模型创建顺序?

Hanny • 5 年前 • 606 次点击  

我有这两个模型(示例),当我试图运行测试时,它会错误地说: no such table: my_app_modelA -如果我向上滚动,我可以看到它在创建 modelB (我认为是由于 default 正在应用)。有办法订这些吗 modelA 总是会在 小精灵 ?或者我不应该将该方法引用为默认属性?只是想让我的测试工作,这是我的症结所在。

我的模特看起来是这样的:

class modelA(models.Model):
    attribute = models.IntegerField()
    active = models.BooleanField(default=False)

    @classmethod
    def get_active_attribute(cls):
        return modelA.objects.get(active=True).attribute

class modelB(models.Model):
    attribute = models.IntegerField(default=modelA.get_active_attribute())

我的问题是:

  • 这是一个可以接受的事情-让默认调用另一个模型方法?

  • 有没有办法处理这些模型的创建,我可以保证 模特儿 先创建,所以 模型B 能否在我的测试中成功创建?

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/46007
 
606 次点击  
文章 [ 1 ]  |  最新文章 5 年前