From dc64d10ea9e4ea8d2fd251721abcd194fbb5677b Mon Sep 17 00:00:00 2001 From: Surap Date: Tue, 15 Sep 2026 13:27:18 +0200 Subject: [PATCH 1/9] Chapter 2 --- estate/__init__.py | 0 estate/__manifest__.py | 8 ++++++++ 2 files changed, 8 insertions(+) create mode 100644 estate/__init__.py create mode 100644 estate/__manifest__.py diff --git a/estate/__init__.py b/estate/__init__.py new file mode 100644 index 00000000000..e69de29bb2d diff --git a/estate/__manifest__.py b/estate/__manifest__.py new file mode 100644 index 00000000000..223b3a8f4c5 --- /dev/null +++ b/estate/__manifest__.py @@ -0,0 +1,8 @@ +{ + 'name': 'Estate', + 'depends': [ + 'base' + ], + 'application': True, + 'installable': True +} \ No newline at end of file From 2fb7c3f93062be2494dfb347fe4b71ad17e6e5d8 Mon Sep 17 00:00:00 2001 From: Surap Date: Wed, 16 Sep 2026 09:12:44 +0200 Subject: [PATCH 2/9] modified: estate/__init__.py import modified: estate/__manifest__.py import new file: estate/data/.gitkeep new file: estate/models/__init__.py creation + import new file: estate/models/estate_property.py define model --- estate/__init__.py | 1 + estate/__manifest__.py | 6 +++--- estate/data/.gitkeep | 0 estate/models/__init__.py | 1 + estate/models/estate_property.py | 25 +++++++++++++++++++++++++ 5 files changed, 30 insertions(+), 3 deletions(-) create mode 100644 estate/data/.gitkeep create mode 100644 estate/models/__init__.py create mode 100644 estate/models/estate_property.py diff --git a/estate/__init__.py b/estate/__init__.py index e69de29bb2d..9a7e03eded3 100644 --- a/estate/__init__.py +++ b/estate/__init__.py @@ -0,0 +1 @@ +from . import models \ No newline at end of file diff --git a/estate/__manifest__.py b/estate/__manifest__.py index 223b3a8f4c5..9f42845d294 100644 --- a/estate/__manifest__.py +++ b/estate/__manifest__.py @@ -1,8 +1,8 @@ { - 'name': 'Estate', + 'name': 'estate', 'depends': [ 'base' ], 'application': True, - 'installable': True -} \ No newline at end of file + 'installable': True, +} diff --git a/estate/data/.gitkeep b/estate/data/.gitkeep new file mode 100644 index 00000000000..e69de29bb2d diff --git a/estate/models/__init__.py b/estate/models/__init__.py new file mode 100644 index 00000000000..f4c8fd6db6d --- /dev/null +++ b/estate/models/__init__.py @@ -0,0 +1 @@ +from . import estate_property \ No newline at end of file diff --git a/estate/models/estate_property.py b/estate/models/estate_property.py new file mode 100644 index 00000000000..bc38f1dd429 --- /dev/null +++ b/estate/models/estate_property.py @@ -0,0 +1,25 @@ + + +from odoo import fields, models + + +class EstateProperty(models.Model): + _name: str = "estate.propety" + + name: fields.Char = fields.Char() + description: fields.Text = fields.Text() + postcode: fields.Char = fields.Char() + date_availability: fields.Date = fields.Date('Creation Date') + expected_price: fields.Float = fields.Float() + selling_price: fields.Float = fields.Float() + bedroom: fields.Integer = fields.Integer() + living_area: fields.Integer = fields.Integer() + facades: fields.Integer = fields.Integer() + garage: fields.Boolean = fields.Boolean() + garden: fields.Boolean = fields.Boolean() + garden_area: fields.Integer = fields.Integer() + garden_orientation: fields.Selection( + string='Type', + selection=[('north', 'North'), ('south', 'South'), ('east', 'East'), ('west', 'West')], + help="Type is used to separate Leads and Opportunities") + From 9b34aef10b887e1cb9436d747e481acf11e11a1d Mon Sep 17 00:00:00 2001 From: Surap Date: Wed, 16 Sep 2026 09:25:59 +0200 Subject: [PATCH 3/9] =?UTF-8?q?chapter=203=20=09modified:=20=20=20estate/m?= =?UTF-8?q?odels/estate=5Fproperty.py=20=09=09try=20to=20fix=20weird=20bas?= =?UTF-8?q?edpylance=20error=20=09=09=09Argument=20of=20type=20"list[tuple?= =?UTF-8?q?[str,=20str]]"=20cannot=20be=20assigned=20to=20parameter=20"sel?= =?UTF-8?q?ection"=20of=20type=20"Sentinel"=20in=20function=20"=5F=5Finit?= =?UTF-8?q?=5F=5F"=20=09=09=09=C2=A0=C2=A0"list[tuple[str,=20str]]"=20is?= =?UTF-8?q?=20not=20assignable=20to=20"Sentinel"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- estate/models/estate_property.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/estate/models/estate_property.py b/estate/models/estate_property.py index bc38f1dd429..4774ac2adb6 100644 --- a/estate/models/estate_property.py +++ b/estate/models/estate_property.py @@ -15,11 +15,10 @@ class EstateProperty(models.Model): bedroom: fields.Integer = fields.Integer() living_area: fields.Integer = fields.Integer() facades: fields.Integer = fields.Integer() - garage: fields.Boolean = fields.Boolean() garden: fields.Boolean = fields.Boolean() garden_area: fields.Integer = fields.Integer() - garden_orientation: fields.Selection( + garage: fields.Boolean = fields.Boolean() + garden_orientation: fields.Selection = fields.Selection( + selection=[("north", "North"), ("south", "South"), ("east", "East"), ("west", "West")], string='Type', - selection=[('north', 'North'), ('south', 'South'), ('east', 'East'), ('west', 'West')], help="Type is used to separate Leads and Opportunities") - From 933a256bee1a0d2deeab8de6e09ce71044a2647f Mon Sep 17 00:00:00 2001 From: Surap Date: Wed, 16 Sep 2026 09:42:27 +0200 Subject: [PATCH 4/9] modified: estate/models/estate_property.py adding description --- estate/models/estate_property.py | 1 + 1 file changed, 1 insertion(+) diff --git a/estate/models/estate_property.py b/estate/models/estate_property.py index 4774ac2adb6..55abfe8dd63 100644 --- a/estate/models/estate_property.py +++ b/estate/models/estate_property.py @@ -6,6 +6,7 @@ class EstateProperty(models.Model): _name: str = "estate.propety" + _description: str | None = None name: fields.Char = fields.Char() description: fields.Text = fields.Text() postcode: fields.Char = fields.Char() From 96115d5f0a474f38803c4fe8f729e0a9c1e73707 Mon Sep 17 00:00:00 2001 From: Surap Date: Wed, 16 Sep 2026 10:16:32 +0200 Subject: [PATCH 5/9] modified: estate/models/estate_property.py fix typo; remove nl --- estate/models/estate_property.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/estate/models/estate_property.py b/estate/models/estate_property.py index 55abfe8dd63..e83b77193cf 100644 --- a/estate/models/estate_property.py +++ b/estate/models/estate_property.py @@ -4,7 +4,7 @@ class EstateProperty(models.Model): - _name: str = "estate.propety" + _name: str = "estate.property" _description: str | None = None name: fields.Char = fields.Char() From 4507a29d6e0c7fb4ee0396450a80f2b6acca8ceb Mon Sep 17 00:00:00 2001 From: Surap Date: Wed, 16 Sep 2026 10:31:21 +0200 Subject: [PATCH 6/9] Chapter 4 new file: estate/security/ir.model.access.csv defining acces --- estate/security/ir.model.access.csv | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 estate/security/ir.model.access.csv diff --git a/estate/security/ir.model.access.csv b/estate/security/ir.model.access.csv new file mode 100644 index 00000000000..2109ce9a591 --- /dev/null +++ b/estate/security/ir.model.access.csv @@ -0,0 +1,2 @@ +id,name,model_id/id,group_id/id,perm_read,perm_write,perm_create,perm_unlink +access_estate_property,estate.property,models_estate_property,base.group_user,1,1,1,1 \ No newline at end of file From 8e9e61ea315b0dce5df9f6f9fabfb0433babcf2c Mon Sep 17 00:00:00 2001 From: Surap Date: Wed, 16 Sep 2026 10:32:23 +0200 Subject: [PATCH 7/9] modified: estate/security/ir.model.access.csv typo --- estate/security/ir.model.access.csv | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/estate/security/ir.model.access.csv b/estate/security/ir.model.access.csv index 2109ce9a591..9ccf73e191e 100644 --- a/estate/security/ir.model.access.csv +++ b/estate/security/ir.model.access.csv @@ -1,2 +1,2 @@ id,name,model_id/id,group_id/id,perm_read,perm_write,perm_create,perm_unlink -access_estate_property,estate.property,models_estate_property,base.group_user,1,1,1,1 \ No newline at end of file +access_estate_property,estate.property,model_estate_property,base.group_user,1,1,1,1 \ No newline at end of file From 9b2f068ecfe6088e8f442d3e6d2e0a97c1846358 Mon Sep 17 00:00:00 2001 From: srapyx Date: Wed, 16 Sep 2026 11:45:47 +0200 Subject: [PATCH 8/9] Update estate/models/estate_property.py MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Leclerc Léo (leol) <74907637+leclerc-leo@users.noreply.github.com> --- estate/models/estate_property.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/estate/models/estate_property.py b/estate/models/estate_property.py index e83b77193cf..e88a7ca32f2 100644 --- a/estate/models/estate_property.py +++ b/estate/models/estate_property.py @@ -22,4 +22,5 @@ class EstateProperty(models.Model): garden_orientation: fields.Selection = fields.Selection( selection=[("north", "North"), ("south", "South"), ("east", "East"), ("west", "West")], string='Type', - help="Type is used to separate Leads and Opportunities") + help="Type is used to separate Leads and Opportunities", + ) From 9c44b0a0c361a3f25a1b39287e66ad76254f6dc5 Mon Sep 17 00:00:00 2001 From: srapyx Date: Wed, 16 Sep 2026 11:47:42 +0200 Subject: [PATCH 9/9] Update estate/models/estate_property.py MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Leclerc Léo (leol) <74907637+leclerc-leo@users.noreply.github.com> --- estate/models/estate_property.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/estate/models/estate_property.py b/estate/models/estate_property.py index e88a7ca32f2..87e45d70c69 100644 --- a/estate/models/estate_property.py +++ b/estate/models/estate_property.py @@ -1,5 +1,3 @@ - - from odoo import fields, models