Hi,
I am new to openerp , I have two table master and details , i want to use id of master as foreign key in detail table.
How can i achieve this?
my code is
from osv import osv,fields
class wlan_master(osv.osv):
_name = 'wlan_master'
_columns = {
'AP_name' :fields.char(),
'description' :fields.char(),
'ip_address' :fields.char(),
}
class wlan_details(osv.osv):
_name = 'wlan_details'
_columns = {
'wireless_workmode' :fields.char(),
'enable_wireless' :fields.char(),
'ssid' :fields.char(),
'channel' :fields.char(),
'wireless_mode' :fields.char(),
'channel_bandwidth' :fields.char(),
'rate' :fields.char(),
'broadcast_ssid' :fields.char(),
'client_isolation' :fields.char(),
'wmm_announcement' :fields.char(),
'fragement_threshold' :fields.char(),
'rts' :fields.char(),
'dtim_gap' :fields.char(),
'beacon_gap' :fields.char(),
'preamble_type' :fields.char(),
'encryption_mode' :fields.char(),
'filter_mode' :fields.char(),
}
Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:
- CRM
- e-Commerce
- Accounting
- Inventory
- PoS
- Project management
- MRP
This question has been flagged
2
Replies
7191
Views
Basically you have to do two things:
from osv import osv,fields
class wlan_master(osv.osv):
_name = 'wlan.master'
_columns = {
'AP_name' :fields.char(),
'description' :fields.char(),
'ip_address' :fields.char(),
'defail_ids': fields.one2many('wlan.details','master_id', 'Details')
}
class wlan_details(osv.osv):
_name = 'wlan.details'
_columns = {
'master_id': fields.many2one('wlan.master', 'Master'),
'wireless_workmode' :fields.char(),
'enable_wireless' :fields.char(),
'ssid' :fields.char(),
'channel' :fields.char(),
'wireless_mode' :fields.char(),
'channel_bandwidth' :fields.char(),
'rate' :fields.char(),
'broadcast_ssid' :fields.char(),
'client_isolation' :fields.char(),
'wmm_announcement' :fields.char(),
'fragement_threshold' :fields.char(),
'rts' :fields.char(),
'dtim_gap' :fields.char(),
'beacon_gap' :fields.char(),
'preamble_type' :fields.char(),
'encryption_mode' :fields.char(),
'filter_mode' :fields.char(),
}
This adds a foreign key to details and this make a proper link to master.
I think you haven't read documentation yet
class wlan_details(osv.osv):
_name = 'wlan_details'
_columns = {
'master_id': fields.many2one('wlan_master', 'Master'),
'wireless_workmode' :fields.char(),
etc...