Parcourir la source

complete Chapter 6:

henry il y a 1 an
Parent
commit
c58806819f

+ 2 - 1
estate/__manifest__.py

@@ -11,7 +11,8 @@
     ],
     "data": [
         "security/ir.model.access.csv",
-        "estate_property_views.xml",
+        "views/estate_property_views.xml",
+        "views/estate_menus.xml"
     ],
     "license": "LGPL-3",
 }

+ 20 - 2
estate/models/estate_property.py

@@ -1,3 +1,5 @@
+from dateutil.relativedelta import relativedelta
+
 from odoo import fields, models
 
 class EstateProperty(models.Model):
@@ -7,7 +9,7 @@ class EstateProperty(models.Model):
     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)
+    date_availability = fields.Date("Available From", default=lambda self: fields.Date.context_today(self) + relativedelta(months=3), 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)
@@ -24,4 +26,20 @@ class EstateProperty(models.Model):
             ("W", "West"),
         ],
         string="Garden Orientation",
-    )
+    )
+    
+    state = fields.Selection(
+        selection=[
+            ("new", "New"),
+            ("offer_received", "Offer Received"),
+            ("offer_accepted", "Offer Accepted"),
+            ("sold", "Sold"),
+            ("canceled", "Canceled"),
+        ],
+        string="Status",
+        required=True,
+        copy=False,
+        default="new",
+    )
+    active = fields.Boolean("Active", default=True)
+    

+ 9 - 0
estate/views/estate_menus.xml

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8"?>
+<odoo>
+    <!-- Top menu item -->
+    <menuitem id="estate_menu_root" name="Real Estate">
+        <menuitem id="estate_advertisement_menu" name="Advertisements" sequence="5">
+            <menuitem id="estate_property_menu_action" action="estate_property_action" sequence="5"/>
+        </menuitem>
+    </menuitem>
+</odoo>

+ 10 - 0
estate/views/estate_property_views.xml

@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- <odoo> 这是XML文件的根元素,表示整个Odoo模块。 -->
+<odoo>
+    <!-- <record> 这是一个记录元素,用于定义一个记录。 -->
+    <record id="estate_property_action" model="ir.actions.act_window">
+        <field name="name">Properties</field>
+        <field name="res_model">estate.property</field>
+        <field name="view_mode">tree,form</field>
+    </record>
+</odoo>