Reputation: 3849
I have two model:
class Requisition(models.Model):
'''
This module is responsible for all of the requisition related operations.
'''
_name = 'mir.requisition'
_description = 'Mir Requisition'
name = fields.Char('Requisition Name', required=True)
company_id = fields.Many2one('res.company', string='Company')
requisition_line_ids = fields.One2many('mir.requisition.line', 'requisition_id', string='Requisition Line')
class RequisitionLine(models.Model):
'''
This module is responsible for all of the requisition line item related operations.
'''
_name = 'mir.requisition.line'
_description = 'Mir Requisition Line'
product_id = fields.Many2one(
'product.product', 'Product', required=True)
product_qty = fields.Float(
'Quantity',
digits=dp.get_precision('Product Unit of Measure'), default=0, required=True)
product_uom_id = fields.Many2one(
'product.uom', 'Unit of Measure',
oldname='product_uom', required=True)
delivery_date = fields.Date(string='Delivery Date', required=True)
delivery_location = fields.Many2one('stock.location', 'Warehouse Location', required=True)
requisition_id = fields.Many2one('mir.requisition', string='Mir Requisition Reference', index=True, ondelete='cascade')
status = fields.Selection([
('draft', 'Draft'),
('in_progress', 'In Progress'),
('approved', 'Approved'),
('cancel', 'Cancel'),
], 'draft')
@api.onchange('product_id')
def _product_onchange(self):
product = self.product_id
self.product_uom_id = self.product_id.uom_id.id
return {'domain': {'product_uom': [('category_id', '=', product.uom_id.category_id.id)]}}
and view is:
<!--Requisition Tree View-->
<record id="mir_requisition_tree" model="ir.ui.view">
<field name="name">Requisition</field>
<field name="model">mir.requisition</field>
<field name="arch" type="xml">
<tree string="Requisition">
<field name="name"/>
<field name="company_id"/>
<field name="create_uid" string="Created By"/>
<field name="create_date" string="Created Date"/>
</tree>
</field>
</record>
Currently this view showing data form parent model mir.requisition
. But i want to display both model data in a single view. Any help will be appreciated.
Upvotes: 1
Views: 2675
Reputation: 1668
You should take a look the invoice_form definition, it works with 'account.invoice' and 'account.invoice.line' models. Its something like this:
<!--Requisition Tree View-->
<record id="mir_requisition_tree" model="ir.ui.view">
<field name="name">Requisition</field>
<field name="model">mir.requisition</field>
<field name="arch" type="xml">
<form string="Requisition">
<field name="name"/>
<field name="company_id"/>
<field name="create_uid" string="Created By"/>
<field name="create_date" string="Created Date"/>
<field name="requisition_line_ids" nolabel="1" widget="one2many_list" >
<tree string="Requisition Lines" editable="bottom">
<!-- 'mir.requisition.line' fields -->
</tree>
</field>
</form>
</field>
</record>
I hope this answer can be helful for you.
Upvotes: 3