2017-08-16 68 views
1

我不能讓樹視圖中顯示任何數據,甚至我可以創建一個沒有問題的項目,他們出現在數據庫中空樹視圖

這裏是查看XML:

 <record id="view_invoice_lab_tree" model="ir.ui.view"> 
 
      <field name="name">lab.invoice.tree</field> 
 
      <field name="model">lab.invoice</field> 
 
      <field name="arch" type="xml"> 
 
       <tree string="Labs Invoices"> 
 
        
 
        <field name="name" string="invoice Number"/> 
 
        <field name="create_date"/> 
 
        <field name="patient_id"/> 
 
        <field name="amount_total"/> 
 
       </tree> 
 
      </field> 
 
     </record>

模型結構:

class LabOrderLine(models.Model): 
 
    _name = 'lab.order.line' 
 
    _description = 'labs Order Line' 
 
    name = fields.Text(string='Description', required=True) 
 
    order_id = fields.Many2one('lab.invoice', string='Invoice Reference', required=True, ondelete='cascade', index=True, copy=False) 
 

 

 
    nameLab = fields.Many2one(
 
     string='Lab', 
 
     comodel_name='medical.lab.patient', 
 
     required=True, 
 
     ondelete='cascade', 
 
    ) 
 

 
    patient_id= fields.Many2one(
 
     'medical.patient', 
 
     string='patient', 
 
     related='nameLab.patient_id', 
 
     readonly=True, 
 
     required=True, 
 
    )

class labinvoice (models.Model): 
 
    _name = "lab.invoice" 
 
    name = fields.Char(string='Invoice Reference', default=lambda self: _('New'), store=True) 
 
    order_line = fields.One2many('lab.order.line', 'order_id', string='Order Lines', copy=True, ) 
 
    nameLab = fields.Many2one('medical.lab.patient',related='order_line.nameLab',string='name Lab', store=True) 
 
    patient_id = fields.Many2one('medical.patient',related='order_line.patient',string='name Patient', store=True, readonly=True)

我認爲這個問題是與One2many場

+0

你在說什麼「模型」? 'lab.invoice'或'lab.order.line'的樹狀視圖 – qvpham

+0

我在說lab.invoice – Borealis

+0

好吧。那麼'amount_total'定義在哪裏? – qvpham

回答

3

其中之一,我有東西也許你已經在窗口的行動使用的域名,之後,你刪除從行動領域。

從您的代碼中刪除域行不會從數據庫中的操作中刪除該域。

因此,如果你定義的域刪除您應該使用這個

<field name="domain">[]</field> 

同樣的事情上下文或任何其他領域。

希望這對你有所幫助

+0

您可以在Odoo後端查看窗口操作,看看是否有任何額外的意外。您需要進入開發者模式,然後進入設置>技術>窗口操作。 – travisw