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

I've created a wizard and i need to load one2many field lines in the wizard form view when click on the wizard button.

any idea

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

Override default_get method of your wizard and prepare the o2m lines data to show the lines when you open a wizard.

Ex:


class WizMain(models.Model):
_name = 'wiz.main'

lines = fields.One2many('wiz.line', 'wiz_id')

def default_get(self, fields_list):
result = super(WizClassName, self).default_get(fields_list)
order = self.env['sale.order'].browse(self._context.get('active_id'))
# Prepare o2m lines data
lines = []
for line in order.order_line:
lines.append((0, 0, {'product_id': line.product_id.id, 'qty': line.product_uom_qty}))
result.update({'lines': lines})
return result


class WizLine(models.Model):
_name = 'wiz.line'

wiz_id = fields.Many2one('wiz.main')
product_id = fields.Many2one('product.product')
qty = fields.Float()


الصورة الرمزية
إهمال
المنشورات ذات الصلة الردود أدوات العرض النشاط
What is wizard ? تم الحل
3
نوفمبر 23
32461
4
يوليو 25
4919
2
ديسمبر 23
17736
6
أبريل 18
21416
5
ديسمبر 23
18275