mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-16 12:12:53 -06:00
This commit is contained in:
parent
e345ca2659
commit
584fff90c7
@ -5,6 +5,8 @@ from django.utils.html import format_html
|
|||||||
from django.utils.translation import gettext_lazy as _
|
from django.utils.translation import gettext_lazy as _
|
||||||
|
|
||||||
from extras.models import *
|
from extras.models import *
|
||||||
|
from core.tables import JobTable
|
||||||
|
from core.models import Job
|
||||||
from netbox.constants import EMPTY_TABLE_TEXT
|
from netbox.constants import EMPTY_TABLE_TEXT
|
||||||
from netbox.events import get_event_text
|
from netbox.events import get_event_text
|
||||||
from netbox.tables import BaseTable, NetBoxTable, columns
|
from netbox.tables import BaseTable, NetBoxTable, columns
|
||||||
@ -26,6 +28,7 @@ __all__ = (
|
|||||||
'SavedFilterTable',
|
'SavedFilterTable',
|
||||||
'ReportResultsTable',
|
'ReportResultsTable',
|
||||||
'ScriptResultsTable',
|
'ScriptResultsTable',
|
||||||
|
'ScriptJobTable',
|
||||||
'SubscriptionTable',
|
'SubscriptionTable',
|
||||||
'TaggedItemTable',
|
'TaggedItemTable',
|
||||||
'TagTable',
|
'TagTable',
|
||||||
@ -638,6 +641,23 @@ class ScriptResultsTable(BaseTable):
|
|||||||
return format_html("<a href='{}'>{}</a>", value, value)
|
return format_html("<a href='{}'>{}</a>", value, value)
|
||||||
|
|
||||||
|
|
||||||
|
class ScriptJobTable(JobTable):
|
||||||
|
id = tables.TemplateColumn(
|
||||||
|
template_code="""<a href="{% url 'extras:script_result' job_pk=record.pk %}">{{ record.id }}</a>""",
|
||||||
|
verbose_name=_('ID'),
|
||||||
|
)
|
||||||
|
|
||||||
|
class Meta(NetBoxTable.Meta):
|
||||||
|
model = Job
|
||||||
|
fields = (
|
||||||
|
'pk', 'id', 'object_type', 'object', 'name', 'status', 'created', 'scheduled', 'interval', 'started',
|
||||||
|
'completed', 'user', 'error', 'job_id',
|
||||||
|
)
|
||||||
|
default_columns = (
|
||||||
|
'pk', 'id', 'object_type', 'object', 'name', 'status', 'created', 'started', 'completed', 'user',
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
class ReportResultsTable(BaseTable):
|
class ReportResultsTable(BaseTable):
|
||||||
index = tables.Column(
|
index = tables.Column(
|
||||||
verbose_name=_('Line')
|
verbose_name=_('Line')
|
||||||
|
@ -15,7 +15,6 @@ from jinja2.exceptions import TemplateError
|
|||||||
from core.choices import ManagedFileRootPathChoices
|
from core.choices import ManagedFileRootPathChoices
|
||||||
from core.forms import ManagedFileForm
|
from core.forms import ManagedFileForm
|
||||||
from core.models import Job
|
from core.models import Job
|
||||||
from core.tables import JobTable
|
|
||||||
from dcim.models import Device, DeviceRole, Platform
|
from dcim.models import Device, DeviceRole, Platform
|
||||||
from extras.choices import LogLevelChoices
|
from extras.choices import LogLevelChoices
|
||||||
from extras.dashboard.forms import DashboardWidgetAddForm, DashboardWidgetForm
|
from extras.dashboard.forms import DashboardWidgetAddForm, DashboardWidgetForm
|
||||||
@ -36,7 +35,7 @@ from virtualization.models import VirtualMachine
|
|||||||
from . import filtersets, forms, tables
|
from . import filtersets, forms, tables
|
||||||
from .constants import LOG_LEVEL_RANK
|
from .constants import LOG_LEVEL_RANK
|
||||||
from .models import *
|
from .models import *
|
||||||
from .tables import ReportResultsTable, ScriptResultsTable
|
from .tables import ReportResultsTable, ScriptResultsTable, ScriptJobTable
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
@ -1351,7 +1350,7 @@ class ScriptJobsView(BaseScriptView):
|
|||||||
def get(self, request, **kwargs):
|
def get(self, request, **kwargs):
|
||||||
script = self.get_object(**kwargs)
|
script = self.get_object(**kwargs)
|
||||||
|
|
||||||
jobs_table = JobTable(
|
jobs_table = ScriptJobTable(
|
||||||
data=script.jobs.all(),
|
data=script.jobs.all(),
|
||||||
orderable=False,
|
orderable=False,
|
||||||
user=request.user
|
user=request.user
|
||||||
|
Loading…
Reference in New Issue
Block a user