2014-09-05 3 views
3

factoryboy를 사용하여 아래의 모델을 모의하고 모든 필드를 복제하지 않는 깨끗한 방법이 있는지 궁금합니다.Factoryboy 기본 fuzzyfields가있는 Django 모델

class ShippingContainer(models.Model): 
    weight = models.IntegerField(null=False) 
    objects = models.IntegerField(null=False) 
    serial_number = models.IntegerField(null=False) 


class ShippingContainerFactory(DjangoModelFactory): 
    class Meta: 
     model = ShippingContainer 

    weight = FuzzyInteger(0, 500) 
    objects = FuzzyInteger(0, 500) 
    serial_number = FuzzyInteger(0, 500) 

factoryboy 그냥

class ShippingContainerFactory(DjangoModelFactory): 
    class Meta: 
     model = ShippingContainer 

으로, 이와 가능 모델 필드의 숫자 특성을 추론 및 공장 필드가 필요하지 않은 경우 그것은 좋은 것?

+1

그러나 FactoryBoy는 정수가 0에서 500 사이 여야한다는 것을 어떻게 알 수 있습니까? –

+0

필자는 정수 필드의 범위 인 기본값을 사용하거나 Factoryboy가 모델에서 선언 한 옵션에 대해 introspect 할 수있는 영리한 세상에서 괜찮습니다. – bwarren2

답변

3

factory에서 그렇게 할 수 있는지 확실하지 않습니다. 하지만 한 줄로 할 수 있습니다. model_mommy

Install model_mommy.

$ pip install model_mommy 

더미 모델을 만듭니다.

from model_mommy import mommy 
from your_app.models import ShippingContainer 

dummy_shipping_container = mommy.make('ShippingContainer')