Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Plugin capability to add "tabs" for model detail views #1000

Closed
4 tasks done
brobare opened this issue Oct 14, 2021 · 2 comments · Fixed by #1843
Closed
4 tasks done

Plugin capability to add "tabs" for model detail views #1000

brobare opened this issue Oct 14, 2021 · 2 comments · Fixed by #1843
Assignees
Labels
type: feature Introduction of new or enhanced functionality to the application
Milestone

Comments

@brobare
Copy link

brobare commented Oct 14, 2021

Environment

  • Python version: 3.8
  • Nautobot version: 1.1.4

Proposed Functionality

Allow for plugins to add "tabs" to model detail pages. For example, ability to add plugin content to another "tab" on a device. The plugin would be able to add a tab and specify a location, say between "Interfaces" and "Power Ports".

Screen Shot 2021-10-14 at 11 47 13 AM

Other parts of the UI allow for custom content to be added, such as the NavBar:
https://nautobot.readthedocs.io/en/stable/plugins/development/#navigation-menu-items

Use Case

As P.D. the plugin developer, I am creating a lot of content that needs to be rendered on model detail pages. For example, I am creating a plugin that tracks all "NMS" related data for a device. I would like to be able to create a new tab on a Device, then render data from the plugin for that device on that tab. Something like:
Screen Shot 2021-10-12 at 12 30 21 PM
But it would be on the page for that device.

Example:
Screen Shot 2021-10-17 at 10 12 51 AM

Database Changes

Dont think there would be any.

External Dependencies

None

Requirements

  • Provide ability for plugins to provide tabs and panes to particular model views
  • Needs Design Review: evaluate minimum amount of boilerplate code for plugins to define the content in the tab views
  • Document best-practices and example of plugin-provided tab view

Needs Refinement

  • Can we adopt a simple pattern to "append to the end" or do we need to provide plugin's ability to insert tab into existing order
@lampwins
Copy link
Member

For context, the tabs today are discrete views that require their own request cycle, which is why this use case was not covered when plugin template extensions were first implemented. That being said, in 1.2 we have the object detail Advanced tab coming which is not its own view and is just using strait bootstrap, so we do now seemingly have a pattern to support this.

@glennmatthews glennmatthews added group: plugin API type: feature Introduction of new or enhanced functionality to the application labels Oct 15, 2021
@glennmatthews glennmatthews changed the title Add "tabs" for model detail views Plugin capability to add "tabs" for model detail views Oct 19, 2021
@lampwins lampwins added this to the v1.4.0 milestone Apr 8, 2022
@briddo briddo self-assigned this May 25, 2022
@bryanculver bryanculver linked a pull request Jun 3, 2022 that will close this issue
6 tasks
@bryanculver
Copy link
Member

Closed via #1843

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Sep 16, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
type: feature Introduction of new or enhanced functionality to the application
Projects
No open projects
Archived in project
6 participants