تخطي للذهاب إلى المحتوى
القائمة
لقد تم الإبلاغ عن هذا السؤال
2 الردود
8547 أدوات العرض

class test1(models.Model):
    """docstring for ClassName"""
    _name = 'test.test1'
    _rec_name = 'name'

    id = fields.Char(string='ID Test 1', required=True)
    name = fields.Char(string='Name ID Test 1', required=True)
    price = fields.Float(string='Price ID Test 1', required=True)


class test2(models.Model):
    _name = 'test.test2'

    test1_name = fields.Many2one("test.test1", "List test 1", required=True)
    amount = fields.Integer(string='Amount', required=True, default='1')
    mymoney = fields.Float(string="Money", readonly=True)# mymoney = amount * price

    @api.onchange("test1_name")
    def onchange_test2(self):
        #self.mymoney = ?????  <============

How to get data "price" from test1 classes for caculate?

Thanks

الصورة الرمزية
إهمال
أفضل إجابة

You have Many2one field of test.test1, you can use that field and get price of that 'test.test1' class record.

You can access like this:

self.test1_name.price

your code will be like following: 

    @api.onchange("test1_name")    

    def onchange_test2(self):    

        self.mymoney = self.test1_name.price


الصورة الرمزية
إهمال
أفضل إجابة

Hi van, 

if self.test1_name:
result = self.amount * self.test1_name.price
self.mymoney = result
الصورة الرمزية
إهمال
المنشورات ذات الصلة الردود أدوات العرض النشاط
2
فبراير 25
5900
1
ديسمبر 24
1452
1
نوفمبر 22
15968
3
أغسطس 22
12996
2
أغسطس 22
4478