Skip to content

Commit 077ffd7

Browse files
committed
[IMP] Tutorial - Chapter 5 - Fields, Attributes, View, Default Values
1 parent c8a3e91 commit 077ffd7

File tree

6 files changed

+44
-18
lines changed

6 files changed

+44
-18
lines changed

estate/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
from . import models
1+
from . import models

estate/__manifest__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
"category": "Category",
77
"data": [
88
"security/ir.model.access.csv",
9+
"views/estate_property_views.xml",
910
"views/estate_menus.xml",
10-
"views/estate_property_views.xml"
1111
]
1212
}

estate/models/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
from . import estate_property
1+
from . import estate_property

estate/models/estate_property.py

Lines changed: 26 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from odoo import fields, models
2-
2+
from dateutil.relativedelta import relativedelta
33

44
class RecurringPlan(models.Model):
55
_name = "estate.property"
@@ -8,16 +8,36 @@ class RecurringPlan(models.Model):
88
name = fields.Char(required=True)
99
description = fields.Text()
1010
postcode = fields.Char()
11-
date_availability = fields.Date('Date Available')
11+
date_availability = fields.Date('Date Available', copy=False, default=(fields.Date.today() + relativedelta(months=3)))
1212
expected_price = fields.Float(required=True)
13-
selling_price = fields.Float()
14-
bedrooms = fields.Integer()
13+
selling_price = fields.Float(readonly=True, copy=False)
14+
bedrooms = fields.Integer(default=2)
1515
living_area = fields.Integer()
1616
facades = fields.Integer()
1717
garage = fields.Boolean()
1818
garden = fields.Boolean()
1919
garden_area = fields.Integer()
2020
garden_orientation = fields.Selection(
2121
string='Garden Orientation',
22-
selection=[('north', 'North'), ('east', 'East'), ('south', 'South'), ('west', 'West')]
23-
)
22+
selection=[
23+
('north', 'North'),
24+
('east', 'East'),
25+
('south', 'South'),
26+
('west', 'West')
27+
]
28+
)
29+
active = fields.Boolean(default=True)
30+
state = fields.Selection(
31+
string='State',
32+
selection=[
33+
('new', 'New'),
34+
('offer_received',
35+
'Offer Received'),
36+
('offer_accepted', 'Offer Accepted'),
37+
('sold', 'Sold'),
38+
('cancelled', 'Cancelled'),
39+
],
40+
required=True,
41+
copy=False,
42+
default='new'
43+
)

estate/views/estate_menus.xml

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
1-
<menuitem id="estate_menu_root" name="Estate Properties Menu">
2-
<menuitem id="estate_first_level_menu" name="First Level">
3-
<menuitem id="estate_model_menu_action" action="estate_property_action"/>
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<odoo>
3+
<menuitem id="estate_property_menu_root" name="Estate Properties">
4+
<menuitem id="properties" name="Properties">
5+
<menuitem id="estate_model_menu_action" action="estate_property_action"/>
6+
</menuitem>
47
</menuitem>
5-
</menuitem>
8+
</odoo>
Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
1-
<record id="estate_property_action" model="ir.actions.act_window">
2-
<field name="name">Estate Properties Action</field>
3-
<field name="res_model">estate.property</field>
4-
<field name="view_mode">list,form</field>
5-
</record>
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<odoo>
3+
<record id="estate_property_action" model="ir.actions.act_window">
4+
<field name="name">Action Button</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)