簡體   English   中英

工廠男孩django工廠的FACTORY_FOR在哪里?

[英]where is FACTORY_FOR in a factory boy django factory?

我在Django項目中使用Factory Boy,並且需要訪問相應工廠中類中定義的類屬性。

我的測試用例具有以下特點:

from django.test.testcases import TransactionTestCase
from app.tests.factories import SomeModelFactory

class MyTestCase(TransactionTestCase):   
    def test_something(self):
        ...
        SomeModelFactory.create(
            data_type=SomeModelFactory.FACTORY_FOR.TYPE_STRING)
        ...

您可能會猜到,我的課堂在正確的位置有相應的常數。

class SomeModel(models.Model):
  TYPE_STRING = 2
  ...

並定義了相應的工廠

class SomeModelFactory(factory.Factory):
  FACTORY_FOR = SomeModel
  ...

測試用例未能說出FACTORY_FOR不存在。 因此,我認為元類將其隱藏在某個地方。 理想情況下,如果我使用的是工廠,我希望盡量減少直接導入模型的需要。

SomeModelFactory._associated_class應該是您想要的...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM