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

Employ HTMX to render emedded tables #8184

Closed
jeremystretch opened this issue Dec 29, 2021 · 4 comments
Closed

Employ HTMX to render emedded tables #8184

jeremystretch opened this issue Dec 29, 2021 · 4 comments
Assignees
Labels
status: accepted This issue has been accepted for implementation type: feature Introduction of new functionality to the application
Milestone

Comments

@jeremystretch
Copy link
Member

NetBox version

v3.1.2

Feature type

New functionality

Proposed functionality

Leverage HTMX to allow ordering and paginating tables of related objects embedded within an object view. For example, when viewing images attached to a device (originally raised in #7003). We should be able to leverage the existing functionality on ObjectListView to support this.

Use case

Provides a more responsive and efficient UX.

Database changes

No response

External dependencies

No response

@jeremystretch jeremystretch added type: feature Introduction of new functionality to the application status: under review Further discussion is needed to determine this issue's scope and/or implementation labels Dec 29, 2021
@jeremystretch jeremystretch changed the title Employ HTMX to generate emedded tables Employ HTMX to render emedded tables Dec 29, 2021
@sdktr
Copy link
Contributor

sdktr commented Jan 5, 2022

While great for the user experience, i'm worried that all the effort into htmx will later on be a reason to not employ an api-based gui because of all the duplicate effort?

The api based gui might not be a goal in itself, but will probably not become one anytime soonish if further investments in the bootstrap framework are continued?

@jeremystretch
Copy link
Member Author

What's nice about HTMX is that it can be implemented opportunistically with very little effort relative to a complete API-driven framework like React or Vue. In fact, we may find that its strategic deployment obviates the need for such a framework entirely. In any case, there are myriad other factors which have prevented work on implementing a new UI framework over the past several years, not the least of which is an absence of any interested volunteers.

@github-actions
Copy link
Contributor

github-actions bot commented Mar 7, 2022

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. NetBox is governed by a small group of core maintainers which means not all opened issues may receive direct feedback. Please see our contributing guide.

@github-actions github-actions bot added the pending closure Requires immediate attention to avoid being closed for inactivity label Mar 7, 2022
@jeremystretch jeremystretch added needs milestone Awaiting prioritization for inclusion with a future NetBox release and removed status: under review Further discussion is needed to determine this issue's scope and/or implementation pending closure Requires immediate attention to avoid being closed for inactivity labels Mar 21, 2022
@jeremystretch jeremystretch added status: accepted This issue has been accepted for implementation and removed needs milestone Awaiting prioritization for inclusion with a future NetBox release labels Jul 27, 2022
@jeremystretch jeremystretch added this to the v3.4 milestone Jul 27, 2022
@jeremystretch jeremystretch self-assigned this Aug 24, 2022
@jeremystretch jeremystretch removed this from the v3.4 milestone Aug 24, 2022
@jeremystretch jeremystretch added this to the v3.5 milestone Jan 5, 2023
@jeremystretch
Copy link
Member Author

I'm making great progress with this. Still have a number of embedded table to update, but that's mostly boilerplate work.

jeremystretch added a commit that referenced this issue Jan 16, 2023
* Enable HTMX rendering for embedded tables

* Start converting embedded tables to use HTMX (WIP)

* Additional table conversions (WIP)

* Standardize HTMX usage for nested group models

* Enable HTMX for additional emebedded tables

* Fix HTMX table rendering for ObjectChildrenView

* Standardize usage of inc/panel_table.html

* Hide selection boxes in embedded tables
jeremystretch added a commit that referenced this issue Feb 20, 2023
* Enable HTMX rendering for embedded tables

* Start converting embedded tables to use HTMX (WIP)

* Additional table conversions (WIP)

* Standardize HTMX usage for nested group models

* Enable HTMX for additional emebedded tables

* Fix HTMX table rendering for ObjectChildrenView

* Standardize usage of inc/panel_table.html

* Hide selection boxes in embedded tables
jeremystretch added a commit that referenced this issue Feb 20, 2023
* Enable HTMX rendering for embedded tables

* Start converting embedded tables to use HTMX (WIP)

* Additional table conversions (WIP)

* Standardize HTMX usage for nested group models

* Enable HTMX for additional emebedded tables

* Fix HTMX table rendering for ObjectChildrenView

* Standardize usage of inc/panel_table.html

* Hide selection boxes in embedded tables
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Apr 17, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
status: accepted This issue has been accepted for implementation type: feature Introduction of new functionality to the application
Projects
None yet
Development

No branches or pull requests

2 participants