Skip to content

Commit fb5f790

Browse files
committed
[ADD] estate: create list, form and search views
1 parent 47a9eac commit fb5f790

2 files changed

Lines changed: 99 additions & 3 deletions

File tree

estate/models/estate_property.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,11 @@ class Property(models.Model):
1010
_description = "Estate Property"
1111

1212
# Fields
13-
name = fields.Char(required=True)
13+
name = fields.Char('Title', required=True)
1414
description = fields.Text()
1515
postcode = fields.Char()
1616
date_availability = fields.Date(
17+
'Available From',
1718
default=datetime.today() + relativedelta(months=3),
1819
copy=False,
1920
)
@@ -23,11 +24,11 @@ class Property(models.Model):
2324
copy=False,
2425
)
2526
bedrooms = fields.Integer(default=2)
26-
living_area = fields.Integer()
27+
living_area = fields.Integer('Living Area (sqm)')
2728
facades = fields.Integer()
2829
garage = fields.Boolean()
2930
garden = fields.Boolean()
30-
garden_area = fields.Integer()
31+
garden_area = fields.Integer('Garden Area (sqm)')
3132
garden_orientation = fields.Selection(
3233
string='Orientation',
3334
selection=[

estate/views/estate_property_views.xml

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,100 @@
11
<?xml version="1.0"?>
22
<odoo>
3+
<record id="estate_property_view_list" model="ir.ui.view">
4+
<field name="name">estate.property.list</field>
5+
<field name="model">estate.property</field>
6+
<field name="arch" type="xml">
7+
<list string="Properties">
8+
<field name="name"/>
9+
<field name="postcode"/>
10+
<field name="bedrooms"/>
11+
<field name="living_area"/>
12+
<field name="expected_price"/>
13+
<field name="selling_price"/>
14+
<field name="date_availability"/>
15+
</list>
16+
</field>
17+
</record>
18+
19+
<record id="estate_property_view_form" model="ir.ui.view">
20+
<field name="name">estate.property.form</field>
21+
<field name="model">estate.property</field>
22+
<field name="arch" type="xml">
23+
<form>
24+
<sheet>
25+
<group>
26+
<h1>
27+
<field name="name"/>
28+
</h1>
29+
</group>
30+
<group>
31+
<group>
32+
<field name="postcode"/>
33+
</group>
34+
<group>
35+
<field name="expected_price"/>
36+
</group>
37+
</group>
38+
<group>
39+
<group>
40+
<field name="date_availability"/>
41+
</group>
42+
<group>
43+
<field name="selling_price"/>
44+
</group>
45+
</group>
46+
<notebook>
47+
<page string="Description">
48+
<group>
49+
<field name="description"/>
50+
</group>
51+
<group>
52+
<field name="bedrooms"/>
53+
</group>
54+
<group>
55+
<field name="living_area"/>
56+
</group>
57+
<group>
58+
<field name="facades"/>
59+
</group>
60+
<group>
61+
<field name="garage"/>
62+
</group>
63+
<group>
64+
<field name="garden"/>
65+
</group>
66+
<group>
67+
<field name="garden_area"/>
68+
</group>
69+
<group>
70+
<field name="garden_orientation"/>
71+
</group>
72+
</page>
73+
</notebook>
74+
</sheet>
75+
</form>
76+
</field>
77+
</record>
78+
79+
<record id="estate_property_view_search" model="ir.ui.view">
80+
<field name="name">estate.property.search</field>
81+
<field name="model">estate.property</field>
82+
<field name="arch" type="xml">
83+
<search string="Search Properties">
84+
<field name="name"/>
85+
<field name="postcode"/>
86+
<field name="expected_price"/>
87+
<field name="bedrooms"/>
88+
<field name="living_area"/>
89+
<field name="facades"/>
90+
<filter name="state" string="Available" domain="['|', ('state', '=', 'new'), ('state', '=', 'offer_received')]"/>
91+
<group expand="1" string="Group By">
92+
<filter name="postcode" context="{'group_by':'postcode'}"/>
93+
</group>
94+
</search>
95+
</field>
96+
</record>
97+
398
<record id="estate_property_action" model="ir.actions.act_window">
499
<field name="name">Property</field>
5100
<field name="res_model">estate.property</field>

0 commit comments

Comments
 (0)