mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-24 17:38:37 -06:00
#4416: Remove individual view for extras.Tag
This commit is contained in:
parent
c484fa99e2
commit
57b73c485f
@ -26,9 +26,6 @@ class Tag(TagBase, ChangeLoggedModel):
|
|||||||
|
|
||||||
csv_headers = ['name', 'slug', 'color', 'description']
|
csv_headers = ['name', 'slug', 'color', 'description']
|
||||||
|
|
||||||
def get_absolute_url(self):
|
|
||||||
return reverse('extras:tag', args=[self.slug])
|
|
||||||
|
|
||||||
def slugify(self, tag, i=None):
|
def slugify(self, tag, i=None):
|
||||||
# Allow Unicode in Tag slugs (avoids empty slugs for Tags with all-Unicode names)
|
# Allow Unicode in Tag slugs (avoids empty slugs for Tags with all-Unicode names)
|
||||||
slug = slugify(tag, allow_unicode=True)
|
slug = slugify(tag, allow_unicode=True)
|
||||||
|
@ -52,10 +52,6 @@ OBJECTCHANGE_REQUEST_ID = """
|
|||||||
|
|
||||||
class TagTable(BaseTable):
|
class TagTable(BaseTable):
|
||||||
pk = ToggleColumn()
|
pk = ToggleColumn()
|
||||||
name = tables.LinkColumn(
|
|
||||||
viewname='extras:tag',
|
|
||||||
args=[Accessor('slug')]
|
|
||||||
)
|
|
||||||
color = ColorColumn()
|
color = ColorColumn()
|
||||||
actions = ButtonsColumn(Tag, pk_field='slug')
|
actions = ButtonsColumn(Tag, pk_field='slug')
|
||||||
|
|
||||||
|
@ -10,7 +10,7 @@ from extras.models import ConfigContext, ObjectChange, Tag
|
|||||||
from utilities.testing import ViewTestCases, TestCase
|
from utilities.testing import ViewTestCases, TestCase
|
||||||
|
|
||||||
|
|
||||||
class TagTestCase(ViewTestCases.PrimaryObjectViewTestCase):
|
class TagTestCase(ViewTestCases.OrganizationalObjectViewTestCase):
|
||||||
model = Tag
|
model = Tag
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
|
@ -13,7 +13,6 @@ urlpatterns = [
|
|||||||
path('tags/import/', views.TagBulkImportView.as_view(), name='tag_import'),
|
path('tags/import/', views.TagBulkImportView.as_view(), name='tag_import'),
|
||||||
path('tags/edit/', views.TagBulkEditView.as_view(), name='tag_bulk_edit'),
|
path('tags/edit/', views.TagBulkEditView.as_view(), name='tag_bulk_edit'),
|
||||||
path('tags/delete/', views.TagBulkDeleteView.as_view(), name='tag_bulk_delete'),
|
path('tags/delete/', views.TagBulkDeleteView.as_view(), name='tag_bulk_delete'),
|
||||||
path('tags/<str:slug>/', views.TagView.as_view(), name='tag'),
|
|
||||||
path('tags/<str:slug>/edit/', views.TagEditView.as_view(), name='tag_edit'),
|
path('tags/<str:slug>/edit/', views.TagEditView.as_view(), name='tag_edit'),
|
||||||
path('tags/<str:slug>/delete/', views.TagDeleteView.as_view(), name='tag_delete'),
|
path('tags/<str:slug>/delete/', views.TagDeleteView.as_view(), name='tag_delete'),
|
||||||
path('tags/<str:slug>/changelog/', views.ObjectChangeLogView.as_view(), name='tag_changelog', kwargs={'model': Tag}),
|
path('tags/<str:slug>/changelog/', views.ObjectChangeLogView.as_view(), name='tag_changelog', kwargs={'model': Tag}),
|
||||||
|
@ -40,33 +40,6 @@ class TagListView(ObjectListView):
|
|||||||
table = tables.TagTable
|
table = tables.TagTable
|
||||||
|
|
||||||
|
|
||||||
class TagView(ObjectView):
|
|
||||||
queryset = Tag.objects.all()
|
|
||||||
|
|
||||||
def get(self, request, slug):
|
|
||||||
|
|
||||||
tag = get_object_or_404(self.queryset, slug=slug)
|
|
||||||
tagged_items = TaggedItem.objects.filter(
|
|
||||||
tag=tag
|
|
||||||
).prefetch_related(
|
|
||||||
'content_type', 'content_object'
|
|
||||||
)
|
|
||||||
|
|
||||||
# Generate a table of all items tagged with this Tag
|
|
||||||
items_table = tables.TaggedItemTable(tagged_items)
|
|
||||||
paginate = {
|
|
||||||
'paginator_class': EnhancedPaginator,
|
|
||||||
'per_page': request.GET.get('per_page', settings.PAGINATE_COUNT)
|
|
||||||
}
|
|
||||||
RequestConfig(request, paginate).configure(items_table)
|
|
||||||
|
|
||||||
return render(request, 'extras/tag.html', {
|
|
||||||
'tag': tag,
|
|
||||||
'items_count': tagged_items.count(),
|
|
||||||
'items_table': items_table,
|
|
||||||
})
|
|
||||||
|
|
||||||
|
|
||||||
class TagEditView(ObjectEditView):
|
class TagEditView(ObjectEditView):
|
||||||
queryset = Tag.objects.all()
|
queryset = Tag.objects.all()
|
||||||
model_form = forms.TagForm
|
model_form = forms.TagForm
|
||||||
|
Loading…
Reference in New Issue
Block a user