コード例 #1
0
    def test_filter_queryset_by_tags(self):
        code_objects = self.code_model.objects.all()

        tag_slugs_one = "javascript+mapping"
        queryset_one, tags_one = filter_queryset_by_tags(code_objects,
                                                         tag_slugs_one,
                                                         tags=[])
        self.assertQuerysetEqual(queryset_one, [self.code_one])
        self.assertEqual(tags_one, [self.tech_tag, self.concept_tag])

        tag_slugs_two = "mapping"
        queryset_two, tags_two = filter_queryset_by_tags(code_objects,
                                                         tag_slugs_two,
                                                         tags=[])
        self.assertQuerysetEqual(queryset_two, [self.code_one, self.code_two])
        self.assertEqual(tags_two, [self.concept_tag])

        tag_slugs_three = "javascript"
        queryset_three, tags_three = filter_queryset_by_tags(code_objects,
                                                             tag_slugs_three,
                                                             tags=[])
        self.assertQuerysetEqual(queryset_three,
                                 [self.code_one, self.code_three])
        self.assertEqual(tags_three, [self.tech_tag])

        tag_slugs_four = "javascript+this_tag_does_not_exist"
        self.assertRaises(
            Http404, lambda: filter_queryset_by_tags(
                code_objects, tag_slugs_four, tags=[]))
コード例 #2
0
ファイル: views.py プロジェクト: UNIVERSAL-IT-SYSTEMS/source
    def get_queryset(self):
        queryset = Code.live_objects.prefetch_related('organizations')

        if self.tag_slugs:
            queryset, self.tags = filter_queryset_by_tags(queryset, self.tag_slugs, self.tags)

        return queryset
    def get_queryset(self):
        queryset = Code.live_objects.prefetch_related('organizations')

        if self.tag_slugs:
            queryset, self.tags = filter_queryset_by_tags(
                queryset, self.tag_slugs, self.tags)

        return queryset
コード例 #4
0
ファイル: views.py プロジェクト: kznmft/opennews-source
    def get_queryset(self):
        queryset = Code.live_objects.all()

        if self.tag_slugs:
            queryset, self.tags = filter_queryset_by_tags(
                queryset, self.tag_slugs, self.tags)

        return queryset
コード例 #5
0
ファイル: views.py プロジェクト: kznmft/opennews-source
    def get_queryset(self):
        queryset = Article.live_objects.filter(show_in_lists=True).prefetch_related('authors', 'people', 'organizations')

        if self.category:
            queryset = queryset.filter(category=self.category)
        elif self.tag_slugs:
            queryset, self.tags = filter_queryset_by_tags(queryset, self.tag_slugs, self.tags)
            
        return queryset
コード例 #6
0
ファイル: views.py プロジェクト: jdotpz/source
    def get_queryset(self):
        queryset = Article.live_objects.prefetch_related('authors', 'people', 'organizations')

        if self.section:
            queryset = queryset.filter(article_type__in=SECTION_MAP[self.section]['article_types'])
        elif self.category:
            queryset = queryset.filter(article_type=self.category)
        elif self.tag_slugs:
            queryset, self.tags = filter_queryset_by_tags(queryset, self.tag_slugs, self.tags)
            
        return queryset
コード例 #7
0
ファイル: views.py プロジェクト: UNIVERSAL-IT-SYSTEMS/source
    def get_queryset(self):
        queryset = Article.live_objects.filter(show_in_lists=True).prefetch_related('authors', 'people', 'organizations')

        if self.section:
            queryset = queryset.filter(category__section=self.section)
        elif self.category:
            queryset = queryset.filter(category=self.category)
        elif self.tag_slugs:
            queryset, self.tags = filter_queryset_by_tags(queryset, self.tag_slugs, self.tags)
            
        return queryset
コード例 #8
0
ファイル: tests.py プロジェクト: UNIVERSAL-IT-SYSTEMS/source
    def test_filter_queryset_by_tags(self):
        code_objects = self.code_model.objects.all()

        tag_slugs_one = "javascript+mapping"
        queryset_one, tags_one = filter_queryset_by_tags(code_objects, tag_slugs_one, tags=[])
        self.assertQuerysetEqual(queryset_one, [self.code_one])
        self.assertEqual(tags_one, [self.tech_tag, self.concept_tag])
        
        tag_slugs_two = "mapping"
        queryset_two, tags_two = filter_queryset_by_tags(code_objects, tag_slugs_two, tags=[])
        self.assertQuerysetEqual(queryset_two, [self.code_one, self.code_two])
        self.assertEqual(tags_two, [self.concept_tag])
        
        tag_slugs_three = "javascript"
        queryset_three, tags_three = filter_queryset_by_tags(code_objects, tag_slugs_three, tags=[])
        self.assertQuerysetEqual(queryset_three, [self.code_one, self.code_three])
        self.assertEqual(tags_three, [self.tech_tag])

        tag_slugs_four = "javascript+this_tag_does_not_exist"
        self.assertRaises(Http404, lambda: filter_queryset_by_tags(
            code_objects, tag_slugs_four, tags=[])
        )