Browse Source

complete Chapter 4: Models And Basic Fields

Henry 1 year ago
parent
commit
3628129992
6 changed files with 47 additions and 0 deletions
  1. 1 0
      .gitignore
  2. 1 0
      README.md
  3. 3 0
      estate/__init__.py
  4. 13 0
      estate/__manifest__.py
  5. 2 0
      estate/models/__init__.py
  6. 27 0
      estate/models/estate_property.py

+ 1 - 0
.gitignore

@@ -0,0 +1 @@
+__pycache__/

+ 1 - 0
README.md

@@ -0,0 +1 @@
+This is Henry's practice demo.

+ 3 - 0
estate/__init__.py

@@ -0,0 +1,3 @@
+# -*- coding: utf-8 -*-
+
+from . import models

+ 13 - 0
estate/__manifest__.py

@@ -0,0 +1,13 @@
+# -*- coding: utf-8 -*-
+# Part of Odoo. See LICENSE file for full copyright and licensing details.
+
+{
+    'name': 'estate',
+    'version': '1.0',
+    'category': 'estate',
+    'summary': 'practice demo',
+    'depends': [
+        'base',
+    ],
+    "license": "LGPL-3",
+}

+ 2 - 0
estate/models/__init__.py

@@ -0,0 +1,2 @@
+	
+from . import estate_property

+ 27 - 0
estate/models/estate_property.py

@@ -0,0 +1,27 @@
+from odoo import fields, models
+
+class EstateProperty(models.Model):
+    _name = "estate.property"
+    _description = "Estate Property"
+    
+    name = fields.Char("Title", required=True)
+    description = fields.Text("Description")
+    postcode = fields.Char("Postcode")
+    date_availability = fields.Date("Available From", default=lambda self: self._default_date_availability(), copy=False)
+    expected_price = fields.Float("Expected Price", required=True)
+    selling_price = fields.Float("Selling Price", copy=False, readonly=True)
+    bedrooms = fields.Integer("Bedrooms", default=2)
+    living_area = fields.Integer("Living Area (sqm)")
+    facades = fields.Integer("Facades")
+    garage = fields.Boolean("Garage")
+    garden = fields.Boolean("Garden")
+    garden_area = fields.Integer("Garden Area (sqm)")
+    garden_orientation = fields.Selection(
+        selection=[
+            ("N", "North"),
+            ("S", "South"),
+            ("E", "East"),
+            ("W", "West"),
+        ],
+        string="Garden Orientation",
+    )