Availability |
Odoo Online
Odoo.sh
On Premise
|
Lines of code | 617 |
Technical Name |
elmore_json_widget |
License | OPL-1 |
Website | http://www.elmoredoo.com |
Availability |
Odoo Online
Odoo.sh
On Premise
|
Lines of code | 617 |
Technical Name |
elmore_json_widget |
License | OPL-1 |
Website | http://www.elmoredoo.com |
Elmore JSON Selector Widget

Transform your Odoo JSON field experience!
View, navigate, and extract data from JSON fields with unparalleled ease and a sleek, modern interface.
Why You Need This Module
Working with raw JSON data in Odoo's default text fields can be cumbersome, error-prone, and visually unappealing. The Elmore JSON Selector Widget revolutionizes this by providing:
- Crystal-Clear Readability: No more squinting at minified JSON. View your data in a beautifully formatted, color-coded, and collapsible tree structure.
- Effortless Navigation: Quickly expand and collapse nodes to explore complex JSON objects with ease.
- Instant Path Extraction: Developers, rejoice! Double-click any key or value to instantly get its precise JSON path then copy it to your clipboard (clipboard access subject to browser security policies), saving valuable time during development and debugging.
- Enhanced User Experience: A dedicated "View" button next to your JSON fields opens a sophisticated popup viewer, keeping your forms clean and focused.
Key Features
- Dedicated "View" Button: Appears next to JSON (Char/Text) fields for quick access.
- Elegant Popup Viewer: A modern, dark-themed modal displays your JSON data, featuring color-coded syntax highlighting and clear distinction for keys and values.
- Interactive Tree Navigation: Expand and collapse individual JSON objects and arrays with clear visual cues (➕/➖ icons).
- One-Click JSON Path Interaction: Simply double-click on any key or value. The full JSON path (e.g.,
model.account.name
) is shown, and a notification displays it. (Automatic copy to clipboard depends on browser security). - Smooth Scrolling: Handles large JSON objects gracefully with internal scrolling.
- Professional Design: Clean, intuitive, and visually appealing interface.
- Easy Integration: Works as a field widget, seamlessly enhancing existing JSON fields.
See It In Action!
1. Accessing the Viewer & Initial View
Description: Clicking the "View" button and the popup appearing with the formatted JSON.
2. Navigating the JSON Tree
Description: Expanding and collapsing different nodes within the JSON structure.
3. Getting JSON Paths with a Double-Click
Description: Double-clicking a key/value and the path notification appearing.
How It Works
The Elmore JSON Selector Widget enhances standard Odoo Char or Text fields intended to store JSON data.
- "View" Button: A "View" button (👁️) appears alongside the textarea for fields using this widget.
- Popup Viewer: Clicking this button opens a modal. The JSON is parsed and rendered by a JavaScript JSON viewing library into a structured, collapsible tree with syntax highlighting.
- Interaction: Click
➕
/➖
icons or keys to expand/collapse nodes. Collapsed sections show placeholders like{...}
or[...]
. - Path Interaction: Double-click any key/value. The widget calculates the dot-notation path (e.g.,
account.marketer.name
) and displays it in a notification. (Clipboard copy depends on browser security).
Installation
- Download the module.
- Place the
elmore_json_widget
folder into your Odooaddons
directory. - Restart your Odoo server.
- Navigate to Apps in Odoo.
- Click Update Apps List.
- Search for "Elmore JSON Selector Widget" and click Install.
Usage
Once installed, the widget enhances Char/Text fields used for JSON.
For Developers:
Define Char or Text fields in your Python models for JSON storage to benefit from the improved UI viewing experience.
from odoo import models, fields
class YourModel(models.Model):
_name = 'your.model'
json_data = fields.Text(string="JSON Data")
# Or: json_data_char = fields.Char(string="JSON Data (Char)")
Optionally, specify the widget in your XML views:
<field name="json_data" widget="json_selector"/>
For Users:
Click the "View" button next to a JSON field to open the interactive viewer. Double-click elements to get their paths.
Support & Contact
We are committed to providing excellent support for our modules.
- Author: Elmore
- Website: https://elmoredoo.com
- Support Email: info@elmoredoo.com
If you encounter any issues, have questions, or require assistance, please don't hesitate to contact us. We appreciate your feedback and will strive to address any concerns promptly.
License
This module is licensed under the Odoo Proprietary License v1.0 (OPL-1).
Please see the LICENSE
file for more details.
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module