diff options
author | Raphaël Barrois <raphael.barrois@polytechnique.org> | 2015-03-26 22:22:03 +0100 |
---|---|---|
committer | Raphaël Barrois <raphael.barrois@polytechnique.org> | 2015-03-26 22:22:03 +0100 |
commit | 69befae5fde1897cf68c4d44a146db5ba642c814 (patch) | |
tree | 88d696ef1784cd73552a5ecd13bc3f4af5d2ac2a /docs/fuzzy.rst | |
parent | 40d4a4b13d4ca959879d1798f24d510fd7abf4dc (diff) | |
download | factory-boy-69befae5fde1897cf68c4d44a146db5ba642c814.tar factory-boy-69befae5fde1897cf68c4d44a146db5ba642c814.tar.gz |
Allow lazy evaluation of FuzzyChoice's iterators (Closes #184).
This allows the following idiom:
``user = factory.fuzzy.FuzzyChoice(User.objects.all())``
Previously, the ``User.objects.all()`` queryset would have been
evaluated *at import time*; it is now evaluated with the first use of the
``FuzzyChoice``.
Diffstat (limited to 'docs/fuzzy.rst')
-rw-r--r-- | docs/fuzzy.rst | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/docs/fuzzy.rst b/docs/fuzzy.rst index 0658652..18978e4 100644 --- a/docs/fuzzy.rst +++ b/docs/fuzzy.rst @@ -62,8 +62,11 @@ FuzzyChoice The :class:`FuzzyChoice` fuzzer yields random choices from the given iterable. - .. note:: The passed in :attr:`choices` will be converted into a list at - declaration time. + .. note:: The passed in :attr:`choices` will be converted into a list upon + first use, not at declaration time. + + This allows passing in, for instance, a Django queryset that will + only hit the database during the database, not at import time. .. attribute:: choices |