Context manager to temporarily register lookups on a model field using lookup_name (or the lookup's lookup_name if not provided).
(field, *lookups, lookup_name=None)
| 1001 | |
| 1002 | @contextmanager |
| 1003 | def register_lookup(field, *lookups, lookup_name=None): |
| 1004 | """ |
| 1005 | Context manager to temporarily register lookups on a model field using |
| 1006 | lookup_name (or the lookup's lookup_name if not provided). |
| 1007 | """ |
| 1008 | try: |
| 1009 | for lookup in lookups: |
| 1010 | field.register_lookup(lookup, lookup_name) |
| 1011 | yield |
| 1012 | finally: |
| 1013 | for lookup in lookups: |
| 1014 | field._unregister_lookup(lookup, lookup_name) |
| 1015 | |
| 1016 | |
| 1017 | def garbage_collect(): |
no outgoing calls