Skip to content

[ADD] Estate: Add real estate module#1331

Draft
rasin-odoo wants to merge 10 commits into
odoo:19.0from
odoo-dev:19.0-training-rasin
Draft

[ADD] Estate: Add real estate module#1331
rasin-odoo wants to merge 10 commits into
odoo:19.0from
odoo-dev:19.0-training-rasin

Conversation

@rasin-odoo

@rasin-odoo rasin-odoo commented Jun 5, 2026

Copy link
Copy Markdown

Created the initial structure of the Estate module for Odoo 19 Technical Training. Added the required __init__.py and __manifest__.py files.

@robodoo

robodoo commented Jun 5, 2026

Copy link
Copy Markdown

Pull request status dashboard

@rasin-odoo rasin-odoo changed the title [ADD]estate: Add real estate module [ADD] Estate: Add real estate module Jun 8, 2026
The real estate module needs a model to store property
information.
This commit introduces the estate.property model with its
basic fields and registers the model within the module.
Runbot reported style violations in the estate module.

This commit removes unnecessary inline comments and adjusts
the formatting of Python files to comply with Odoo coding
guidelines and linting requirements.

The goal is to improve code readability and ensure the
module passes automated style checks.
Add the first XML data files for the estate module to expose the
estate.property model through the user interface.

A window action is introduced to link the model with the client
views, and a three-level menu hierarchy is added to make property
records accessible from the application dashboard.

The menu structure follows the standard Odoo navigation pattern
of root menu, first-level menu and action menu while keeping
data files loaded in the proper sequence.
Improve the property model by defining default values and
field behaviors required by the real estate workflow.

The number of bedrooms now defaults to two and the
availability date is automatically initialized three months
in the future. The selling price is made read-only because
it will be managed later through the offer process.

The selling price and availability date are excluded from
record duplication to avoid carrying over values that should
be recomputed or re-entered for a new property.
This change introduces dedicated list, form and search views for
the estate.property model to improve record visualization and
navigation.
1. Add a custom list view to display key property information.
2. Add a custom form view with grouped fields and notebook pages.
3. Add a custom search view with shortcuts for common search fields.
4. Add domain-based filters and postcode grouping options.

@bit-odoo bit-odoo left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hello @rasin-odoo
Great Work!

Can you please add a description for this commit message 487f4e3

Also, improve the PR description.

Thanks

<field name="bedrooms"/>
<field name="living_area"/>
<field name="facades"/>

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

unneccary diff.

id="estate_menu_root"
name="Real Estate"
/>

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

unneccary diff.

name="Advertisements"
parent="estate_menu_root"
/>

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

unneccary diff.

<field name="view_mode">list,form</field>
</record>

</odoo> No newline at end of file

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should be one empty line at the end of the file.

Implemented Chapter 7: Relations Between Models

- Added estate.property.type model with menus, action, views, and access rights
- Linked properties to property types using Many2one (property_type_id)
- Added buyer (res.partner) and salesperson (res.users) Many2one fields
- Set current user as default salesperson and prevented buyer from being copied
- Added estate.property.tag model with menus, action, views, and access rights
- Linked properties and tags using Many2many (tag_ids) with tag widget support
- Added estate.property.offer model with price, status, partner, and property fields
- Linked properties and offers using One2many (offer_ids) and Many2one (property_id)
- Created offer views and integrated offers into the property form
- Updated manifests, model imports, security rules, and views to support new relationships
Added sample data for the Real Estate module

- Created data/ directory for predefined records
- Added sample property records
- Added sample property type records
- Added sample property tag records
- Registered XML data files in the module manifest
- Simplified testing and development with loaded data
@rasin-odoo rasin-odoo force-pushed the 19.0-training-rasin branch from e871574 to b6f4f53 Compare June 22, 2026 13:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants