openerp
  • odoo-8
  • 2016-07-01 8 views 0 likes 
    0

    Also ich habe diese 2 Klassen.odoo - Domain-Filter basierend auf Feld aus einer anderen Klasse

    diese

    class Relocation(models.Model): 
    _name = 'test.plan_relocation' 
    
    type = fields.Selection() 
    price_id = fields.Many2one('test.plan_price',domain="[('type','=',type)]") 
    relocation_line_ids = fields.One2many('test.plan_relocation_line','relocation_id') 
    

    und diese

    class RelocationLine(models.Model): 
    _name = 'test.plan_relocation_line' 
    
    relocation_id = fields.Many2one('test.plan_relocation') 
    source_id = fields.Many2one('test.plan_spending_actual',required=True) 
    available_source = fields.Float(related='source_id.available',default=0,readonly=True) 
    

    Die Sache ist ich die "source_id" filtern wollen auf dem "price_id" ein. Wie kann ich das erreichen?

    Die 2 Klassen sind in einem xml. Ein Teil des XML sieht so aus.

    <field name="relocation_line_ids"> 
        <tree editable="bottom"> 
         <field name="source_id" string="Source" /> 
         <field name="available_source" /> 
        </tree> 
    </field> 
    

    Vielen Dank für Ihre Hilfe.

    Antwort

    2

    in xml von test.plan_relocation_line:

    <field name="source_id" domain="[('price_id', '=',parent.price_id)]" /> 
    

    Hoffe, dass es Ihnen helfen ..

    +0

    Irgendwie funktioniert es nicht und den Filter nicht tun. Übrigens, es gibt nur 1 xml für beide Klassen, ich habe meine Frage aktualisiert. Vielen Dank. – Aurel

    +0

    Es funktioniert mit dem "Eltern". Danke @KbiR. – Aurel

     Verwandte Themen

    • Keine verwandten Themen^_^