1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00

Tag should use a stock manager by default

This commit is contained in:
Jeremy Stretch
2020-06-16 16:57:32 -04:00
parent b318bde76c
commit 4ae05dddeb
7 changed files with 13 additions and 12 deletions

View File

@ -108,7 +108,7 @@ class ExportTemplateViewSet(ModelViewSet):
# #
class TagViewSet(ModelViewSet): class TagViewSet(ModelViewSet):
queryset = Tag.objects.annotate( queryset = Tag.restricted.annotate(
tagged_items=Count('extras_taggeditem_items', distinct=True) tagged_items=Count('extras_taggeditem_items', distinct=True)
) )
serializer_class = serializers.TagSerializer serializer_class = serializers.TagSerializer

View File

@ -212,7 +212,7 @@ class ConfigContextFilterSet(BaseFilterSet):
) )
tag = django_filters.ModelMultipleChoiceFilter( tag = django_filters.ModelMultipleChoiceFilter(
field_name='tags__slug', field_name='tags__slug',
queryset=Tag.objects.unrestricted(), queryset=Tag.objects.all(),
to_field_name='slug', to_field_name='slug',
label='Tag (slug)', label='Tag (slug)',
) )

View File

@ -22,7 +22,8 @@ class Tag(TagBase, ChangeLoggedModel):
blank=True, blank=True,
) )
objects = RestrictedQuerySet.as_manager() objects = models.Manager()
restricted = RestrictedQuerySet.as_manager()
def get_absolute_url(self): def get_absolute_url(self):
return reverse('extras:tag', args=[self.slug]) return reverse('extras:tag', args=[self.slug])

View File

@ -28,7 +28,7 @@ from .tables import ConfigContextTable, ObjectChangeTable, TagTable, TaggedItemT
# #
class TagListView(ObjectListView): class TagListView(ObjectListView):
queryset = Tag.objects.annotate( queryset = Tag.restricted.annotate(
items=Count('extras_taggeditem_items', distinct=True) items=Count('extras_taggeditem_items', distinct=True)
).order_by( ).order_by(
'name' 'name'
@ -40,7 +40,7 @@ class TagListView(ObjectListView):
class TagView(ObjectView): class TagView(ObjectView):
queryset = Tag.objects.all() queryset = Tag.restricted.all()
def get(self, request, slug): def get(self, request, slug):
@ -67,19 +67,19 @@ class TagView(ObjectView):
class TagEditView(ObjectEditView): class TagEditView(ObjectEditView):
queryset = Tag.objects.all() queryset = Tag.restricted.all()
model_form = forms.TagForm model_form = forms.TagForm
default_return_url = 'extras:tag_list' default_return_url = 'extras:tag_list'
template_name = 'extras/tag_edit.html' template_name = 'extras/tag_edit.html'
class TagDeleteView(ObjectDeleteView): class TagDeleteView(ObjectDeleteView):
queryset = Tag.objects.all() queryset = Tag.restricted.all()
default_return_url = 'extras:tag_list' default_return_url = 'extras:tag_list'
class TagBulkEditView(BulkEditView): class TagBulkEditView(BulkEditView):
queryset = Tag.objects.annotate( queryset = Tag.restricted.annotate(
items=Count('extras_taggeditem_items', distinct=True) items=Count('extras_taggeditem_items', distinct=True)
).order_by( ).order_by(
'name' 'name'
@ -90,7 +90,7 @@ class TagBulkEditView(BulkEditView):
class TagBulkDeleteView(BulkDeleteView): class TagBulkDeleteView(BulkDeleteView):
queryset = Tag.objects.annotate( queryset = Tag.restricted.annotate(
items=Count('extras_taggeditem_items') items=Count('extras_taggeditem_items')
).order_by( ).order_by(
'name' 'name'

View File

@ -102,7 +102,7 @@ class TagFilter(django_filters.ModelMultipleChoiceFilter):
kwargs.setdefault('field_name', 'tags__slug') kwargs.setdefault('field_name', 'tags__slug')
kwargs.setdefault('to_field_name', 'slug') kwargs.setdefault('to_field_name', 'slug')
kwargs.setdefault('conjoined', True) kwargs.setdefault('conjoined', True)
kwargs.setdefault('queryset', Tag.objects.unrestricted()) kwargs.setdefault('queryset', Tag.objects.all())
super().__init__(*args, **kwargs) super().__init__(*args, **kwargs)

View File

@ -585,7 +585,7 @@ class TagFilterField(forms.MultipleChoiceField):
def __init__(self, model, *args, **kwargs): def __init__(self, model, *args, **kwargs):
def get_choices(): def get_choices():
tags = model.tags.all().unrestricted().annotate( tags = model.tags.annotate(
count=Count('extras_taggeditem_items') count=Count('extras_taggeditem_items')
).order_by('name') ).order_by('name')
return [ return [

View File

@ -215,7 +215,7 @@ def prepare_cloned_fields(instance):
# Copy tags # Copy tags
if is_taggable(instance): if is_taggable(instance):
params['tags'] = ','.join([t.name for t in instance.tags.all().unrestricted()]) params['tags'] = ','.join([t.name for t in instance.tags.all()])
# Concatenate parameters into a URL query string # Concatenate parameters into a URL query string
param_string = '&'.join( param_string = '&'.join(