Skip to Content
Menu
This question has been flagged
1 Reply
7558 Views

Hello,


I have product line in website Form.Product Line Have 3 fields(product_id, Quantity, Specification).

Problem is how to create record of product line and attach same with current model from website form.


AFAIK One2many in website form accept only ids in list format, not (0, _, {..}) format.

Can I am missing somewhere or need to be customize the code.

Thanks!

Avatar
Discard
Best Answer

yes in /website_form  One2many return a list of ids. so if you archive this type of functionality then you want to override extract_data().

like,
 

def extract_data(self, model, **kwargs):

product_ids = kwargs.pop('product_id[]', '').split(',')

quantity = kwargs.pop('quantity[]', '').split(',')

model_record = request.env['ir.model'].search([('model', '=', 'product.line')])

product_line_ids = []

line = {}

for index, product in enumerate(product_ids):

line = {

'product_id': product,

'quantity': quantity[index]

}

product_line_ids.append((0, 0, line))

data = super(Website, self).extract_data(model, * * kwargs)

if data['record']:

data['record']['product_ids'] = product_line_ids

return data


Suppose you have a multiple line on form view for product, add this list in form, for ex.

<input type="text" name="product_id[]"/>

try this it will help you. Thanks ;)

Avatar
Discard
Related Posts Replies Views Activity
2
May 25
9722
3
Mar 24
5378
1
Jan 21
3417
0
Mar 19
3388
0
Feb 19
2812