Odoo Development Support with Cybrosys Assista IDE
Cybrosys Assista IDE is a powerful, Odoo-specific development environment that provides end-to-end support for building, debugging, and maintaining Odoo modules. From module creation to code validation, Assista IDE streamlines the development process with intuitive tools, intelligent suggestions, and adherence to Odoo’s coding standards. This guide outlines the key features that make Assista IDE an essential tool for Odoo developers of all skill levels.
1. Odoo Module Creator
Assista IDE simplifies module creation with a versatile module generator that supports six distinct templates, catering to various Odoo development needs.
Features
- Module Types: Create basic modules, advanced modules, basic OWL (Odoo Web Library) modules, advanced OWL modules, theme modules, or system tray modules.
- How to Use: Right-click on the addons path in your project, select Create Odoo Module, choose the desired template, enter the module name, and Assista IDE generates a ready-to-use module structure with all necessary files.
- Benefits:
- Eliminates manual setup of module boilerplate.
- Ensures consistent structure and Odoo compliance.
- Supports diverse module types for backend, frontend, and theme development.
2. Odoo File Creator
Assista IDE streamlines the creation of essential Odoo files, reducing repetitive tasks and ensuring accuracy.
Features
- Supported File Types:
- Python: Models, controllers,
__init__.py
,__manifest__.py
. - XML: Basic or advanced views, reports, cron jobs, data files.
- CSV:
ir.model.access.csv
for access control.
- Python: Models, controllers,
- How to Use: Right-click on the target folder, select Create Odoo File from the context menu, choose the file type and template, provide a name, and Assista IDE generates the file with pre-filled, Odoo-compliant content.
- Benefits:
- Speeds up file creation with pre-configured templates.
- Reduces errors by adhering to Odoo conventions.
- Supports a wide range of file types for comprehensive development.
3. Context-Aware Smart Suggestions
The Smart Suggestions feature provides intelligent, context-aware code completion and navigation, tailored to Odoo’s architecture.
Key Features
- Smart Navigation:
- Template Navigation: Jump to template definitions using
t-call
auto-suggestions, preview templates in-place, and navigate withCtrl+Click
orF12
. - Code Navigation: Access field definitions, button actions, menu definitions,
inherit_id
parent views, and record references instantly.
- Template Navigation: Jump to template definitions using
- Context-Aware Code Completion:
- Adapts suggestions for Python (e.g., ORM, API decorators) and XML (e.g., view definitions, widgets) contexts.
- Model and Field Discovery:
- Automatically detects all models and fields in your workspace, including custom modules.
- Deep Relational Field Traversal:
- Supports unlimited traversal of relational fields (e.g.,
self.order_line.product_id.categ_id.
), suggesting fields for the final model.
- Supports unlimited traversal of relational fields (e.g.,
- Odoo-Specific Patterns:
- Suggests completions for ORM methods, API decorators (
@api.depends
,@api.onchange
,@api.constrains
), manifest dependencies, and XPath attributes.
- Suggests completions for ORM methods, API decorators (
- Automatic Updates:
- Refreshes suggestions in real-time as you modify your codebase.
- Benefits:
- Reduces errors with validated, Odoo-specific suggestions.
- Enhances productivity with instant access to components and shortcuts (
Ctrl+Space
,Tab
). - Supports both beginners and advanced developers with guided and complex suggestions.
4. Easy View and Report Creation
Assista IDE simplifies the creation of Odoo views and reports directly from model definitions, eliminating repetitive manual tasks.
Create Views from Model
- How to Use: Right-click on a model in a Python file, select Create Views, and Assista IDE generates a view file (e.g., form, tree, kanban) tailored to the model’s fields.
- Benefits:
- Automatically generates view structures based on model definitions.
- Saves time by reducing manual XML coding.
Create Reports from Model
- Report Types: PDF or HTML reports.
- How to Use: Right-click on a model, select Create Report, choose the report type (PDF or HTML), and Assista IDE creates a report template with relevant fields.
- Benefits:
- Streamlines report creation with pre-configured templates.
- Ensures compatibility with Odoo’s reporting framework.
5. Code Snippet Suggestions
Assista IDE includes a robust library of Odoo-specific code snippets to accelerate development while maintaining consistency.
Key Statistics
- Total Snippets: 69
- Python Snippets (39):
- Model Definition: 4 (new model, classical/delegated/extended inheritance)
- Fields: 17 (e.g., Boolean, Many2one, Monetary)
- Methods: 9 (e.g., create, onchange, compute)
- Error Handling: 5 (e.g., ValidationError, UserError)
- Notifications: 4 (e.g., info, success, rainbow man)
- XML Snippets (30):
- Common Tags: 2 (Odoo XML, record)
- Views: 7 (form, list, kanban, etc.)
- View Components: 6 (button box, chatter, etc.)
- Actions and Menus: 4 (window action, menu items)
- Inheritance: 2 (view inheritance, XPath)
- Field Attributes: 9 (e.g., widget, domain, groups)
- Benefits:
- Provides ready-to-use code blocks for frequent Odoo tasks.
- Ensures adherence to Odoo coding standards.
- Accessible via simple keywords for quick insertion.
For a detailed list, refer to the Snippets Reference.
6. Odoo Coding Standards Inspection
Assista IDE enforces Odoo coding standards through its advanced inspection tools, ensuring high-quality, maintainable code.
Key Statistics
- Total Validation Rules: 70+
- File Types Covered:
- Python: File/class/method/field naming, import order, forbidden patterns (e.g.,
.clone()
,cr.commit()
). - XML: File naming (e.g.,
_views.xml
), tag/attribute order, ID/name patterns (e.g.,*_view_<type>
). - CSV: Validates
ir.model.access.csv
(header, columns, ID/name patterns).
- Python: File/class/method/field naming, import order, forbidden patterns (e.g.,
- Inspection Features:
- Real-time feedback with inline error highlighting.
- Quick fixes for common issues.
- Context-aware validation and cross-reference tracking for consistency.
Python Inspections
- File Naming: Snake_case (e.g.,
sale_order.py
), model class/file matching. - Class Naming: CamelCase (e.g.,
SaleOrder
). - Field Naming:
Many2one
ends with_id
,One2many
/Many2many
ends with_ids
. - Method Naming: Specific prefixes (e.g.,
_compute_
,action_
). - Model Naming: Singular form (e.g.,
res.partner
).
XML Inspections
- File Naming: Views (
_views.xml
), security (_security.xml
), reports (_report_views.xml
). - Tag/Attribute Order:
<record>
requiresid
beforemodel
,<field>
requiresname
first. - ID Patterns: Menus (
*_menu
), views (*_view_<type>
), actions (*_action
).
CSV Inspections
- Validates
ir.model.access.csv
with required columns (id
,name
,model_id
) and patterns (e.g.,access_<model_name>
).
Why Choose Assista IDE for Odoo Development?
Assista IDE combines module creation, file generation, intelligent code suggestions, and strict adherence to Odoo standards in a single, user-friendly environment. Its tailored features reduce setup time, minimize errors, and enhance productivity, making it the ideal choice for Odoo developers.
Next Steps
- Set up your Odoo environment with the Easy Odoo Setup Guide.
- Explore all features in the Assista IDE Features Overview.
- For assistance, visit the Support Page.