Skip to content

Commit 0e1ffa3

Browse files
committed
[IMP] Chapter 5 - Add UI
1 parent 057d77f commit 0e1ffa3

File tree

4 files changed

+42
-7
lines changed

4 files changed

+42
-7
lines changed

estate/__manifest__.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,12 @@
11
{
22
'name': 'Real Estate',
33
'depends': ['base'],
4-
'data': ['security/ir.model.access.csv'],
4+
'data': [
5+
'security/ir.model.access.csv',
6+
7+
'views/estate_property_views.xml',
8+
'views/estate_menus.xml',
9+
],
510
'installable': True,
611
'application': True,
712
'author': "Odoo",

estate/models/property.py

Lines changed: 20 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,36 @@
1+
from dateutil.relativedelta import relativedelta
2+
13
from odoo import fields, models
24

35

46
class Property(models.Model):
5-
_name = "estate.property"
6-
_description = "Estate property"
7+
_name = 'estate.property'
8+
_description = 'Estate property'
79

810
name = fields.Char(required=True)
911
description = fields.Text()
1012
postcode = fields.Char()
11-
date_availability = fields.Date()
13+
date_availability = fields.Date(default=fields.Datetime.today() + relativedelta(months=3), copy=False)
1214
expected_price = fields.Float(required=True)
13-
selling_price = fields.Float()
14-
bedrooms = fields.Integer()
15+
selling_price = fields.Float(readonly=True, copy=False)
16+
bedrooms = fields.Integer(default=2)
1517
living_area = fields.Integer()
1618
facades = fields.Integer()
1719
garage = fields.Boolean()
1820
garden = fields.Boolean()
1921
garden_area = fields.Integer()
2022
garden_orientation = fields.Selection(
21-
selection=[("north", "North"), ("south", "South"), ("east", "East"), ("west", "West")]
23+
selection=[('north', 'North'), ('south', 'South'), ('east', 'East'), ('west', 'West')]
24+
)
25+
state = fields.Selection(
26+
default='new',
27+
selection=[
28+
('new', 'New'),
29+
('offer_received', 'Offer Received'),
30+
('offer_accepted', 'Offer Accepted'),
31+
('sold', 'Sold'), ('cancelled', 'Cancelled'),
32+
],
33+
required=True,
34+
copied=False,
2235
)
36+
active = fields.Boolean(default=True)

estate/views/estate_menus.xml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<?xml version="1.0"?>
2+
<odoo>
3+
<menuitem id="estate_property_menu_root" name="Real Estate">
4+
<menuitem id="estate_property_first_level_menu" name="Advertisements">
5+
<menuitem id="estate_property_model_menu_action" action="estate_property_model_action"/>
6+
</menuitem>
7+
</menuitem>
8+
</odoo>
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<?xml version="1.0"?>
2+
<odoo>
3+
<record id="estate_property_model_action" model="ir.actions.act_window">
4+
<field name="name">Properties</field>
5+
<field name="res_model">estate.property</field>
6+
<field name="view_mode">list,form</field>
7+
</record>
8+
</odoo>

0 commit comments

Comments
 (0)