Odoo Help


Website Form(Set Value for One2many)

Jamin Shah
on 12/16/15, 1:03 AM 1,026 views


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.


Ajay Patel
On 12/16/15, 4:25 AM

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().


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 ;)

About This Community

This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.


Odoo Training Center

Access to our E-learning platform and experience all Odoo Apps through learning videos, exercises and Quizz.

Test it now

Question tools

1 follower(s)


Asked: 12/16/15, 1:03 AM
Seen: 1026 times
Last updated: 12/18/15, 7:06 AM