コード例 #1
0
    def test_filter_isnull(self):
        results = Permission.objects.filter(filter_isnull('role'))
        self.assertEqual(0, results.count())

        results = Permission.objects.filter(filter_isnull('agent'))
        self.assertEqual(1, results.count())

        results = Permission.objects.filter(filter_isnull('target'))
        self.assertEqual(0, results.count())
コード例 #2
0
        def wrapped(queryset, value=ANY, prefix=None):
            if value is ANY:
                return Q()

            if value is NULL:
                return filter_isnull(key, prefix)

            # The fn should return a Q object.
            return fn(queryset, **{key: value, 'prefix': prefix})
コード例 #3
0
 def _get_agent_query(self, agent, prefix):
     # Always add in isnull
     return (filter_isnull('agent', prefix)
             | self._get_filter(get_key('agent', prefix), agent))