Initial Commit
This commit is contained in:
commit
8bd21209d9
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
__pycache__
|
||||
36
README.md
Normal file
36
README.md
Normal file
@ -0,0 +1,36 @@
|
||||
# Res Partner Extended
|
||||
|
||||
This is a custom Odoo 19 module that extends the default `res.partner` (Contact) model to store additional personal information.
|
||||
|
||||
## Features
|
||||
|
||||
This module introduces two new custom fields to the Contact form:
|
||||
1. **Gender (`gender`)**: A selection field that allows users to specify the gender of the contact.
|
||||
- Available options: `Male`, `Female`.
|
||||
2. **Birth Date (`birth_date`)**: A date field that allows users to record the date of birth of the contact.
|
||||
|
||||
## User Interface
|
||||
|
||||
The new fields are seamlessly integrated into the standard Odoo interface. They are placed in the main `res.partner` form view (`base.view_partner_form`), positioned immediately below the address format block. This ensures a natural flow of information when creating or editing a contact's profile.
|
||||
|
||||
## Technical Details
|
||||
|
||||
- **Model Extended**: `res.partner`
|
||||
- **Fields Added**:
|
||||
- `gender` (Type: `fields.Selection`)
|
||||
- `birth_date` (Type: `fields.Date`)
|
||||
- **View Inherited**: `base.view_partner_form`
|
||||
- **Dependencies**: `base`, `contacts`
|
||||
|
||||
## Installation Instructions
|
||||
|
||||
1. Place the `res_partner_extended` folder into your Odoo addons directory.
|
||||
2. Restart the Odoo service.
|
||||
3. Enable **Developer Mode** in your Odoo instance (Settings -> Scroll down -> Activate the developer mode).
|
||||
4. Navigate to the **Apps** menu and click on **Update Apps List**.
|
||||
5. Remove the `Apps` filter in the search bar and search for `Res Partner Extended`.
|
||||
6. Click the **Activate** (or **Install**) button.
|
||||
|
||||
## Author
|
||||
|
||||
Abdul Aziz Amrullah
|
||||
1
__init__.py
Normal file
1
__init__.py
Normal file
@ -0,0 +1 @@
|
||||
from . import models
|
||||
15
__manifest__.py
Normal file
15
__manifest__.py
Normal file
@ -0,0 +1,15 @@
|
||||
{
|
||||
'name': 'Res Partner Extended',
|
||||
'version': '1.0',
|
||||
'summary': 'Add gender and birth date to Partner',
|
||||
'description': 'Add custom fields gender and birth date below the address in res.partner model.',
|
||||
'author': 'Abdul Aziz Amrullah',
|
||||
'category': 'Sales/CRM',
|
||||
'depends': ['base', 'contacts'],
|
||||
'data': [
|
||||
'views/res_partner_views.xml',
|
||||
],
|
||||
'installable': True,
|
||||
'application': False,
|
||||
'license': 'LGPL-3',
|
||||
}
|
||||
1
models/__init__.py
Normal file
1
models/__init__.py
Normal file
@ -0,0 +1 @@
|
||||
from . import res_partner
|
||||
11
models/res_partner.py
Normal file
11
models/res_partner.py
Normal file
@ -0,0 +1,11 @@
|
||||
from odoo import models, fields
|
||||
|
||||
class ResPartner(models.Model):
|
||||
_inherit = 'res.partner'
|
||||
|
||||
gender = fields.Selection([
|
||||
('Male', 'Male'),
|
||||
('Female', 'Female'),
|
||||
], string='Gender')
|
||||
|
||||
birth_date = fields.Date(string='Birth Date')
|
||||
17
views/res_partner_views.xml
Normal file
17
views/res_partner_views.xml
Normal file
@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
<data>
|
||||
<record id="view_partner_form_inherit_res_partner_extended" model="ir.ui.view">
|
||||
<field name="name">res.partner.form.inherit.res.partner.extended</field>
|
||||
<field name="model">res.partner</field>
|
||||
<field name="inherit_id" ref="base.view_partner_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<!-- Place the new fields right after the address format block -->
|
||||
<xpath expr="//div[hasclass('o_address_format')]" position="after">
|
||||
<field name="gender"/>
|
||||
<field name="birth_date"/>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
</data>
|
||||
</odoo>
|
||||
Loading…
Reference in New Issue
Block a user