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

Goodnight,

I am creating a Many2many field, but adding it to the view tells me that the field does not exist what it can be. appreciate your help.

ordenventa_ids = fields.Many2many("sale.order",string="OrdenVenta")

in the view:

<field name="ordenventa_ids"/>


  File "/usr/lib/python3/dist-packages/odoo/models.py", line 1037, in _validate_fields
    check(self)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/ir/ir_ui_view.py", line 342, in _check_xml
    self.postprocess_and_fields(view.model, view_doc, view.id)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/ir/ir_ui_view.py", line 1064, in postprocess_and_fields
    self.raise_view_error(message, view_id)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/ir/ir_ui_view.py", line 519, in raise_view_error
    raise ValueError(message)
ValueError: El campo `ordenventa_ids` no existe

Contexto del error:
Vista `efact.view.form.guia.remision`
[view_id: 877, xml_id: efact.view_form_guia_remision, model: efact.guia_remision, parent_id: n/a]

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/odoo/tools/convert.py", line 744, in parse
    self._tags[rec.tag](rec, de, mode=mode)
  File "/usr/lib/python3/dist-packages/odoo/tools/convert.py", line 654, in _tag_record
    id = self.env(context=rec_context)['ir.model.data']._update(rec_model, self.module, res, rec_id or False, not self.isnoupdate(data_node), noupdate=self.isnoupdate(data_node), mode=self.mode)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/ir/ir_model.py", line 1457, in _update
    record.write(values)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/ir/ir_ui_view.py", line 424, in write
    return super(View, self).write(self._compute_defaults(vals))
  File "/usr/lib/python3/dist-packages/odoo/models.py", line 3129, in write
    field.determine_inverse(records)
  File "/usr/lib/python3/dist-packages/odoo/fields.py", line 1074, in determine_inverse
    getattr(records, self.inverse)()
  File "/usr/lib/python3/dist-packages/odoo/addons/base/ir/ir_ui_view.py", line 273, in _inverse_arch
    view.write(data)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/ir/ir_ui_view.py", line 424, in write
    return super(View, self).write(self._compute_defaults(vals))
  File "/usr/lib/python3/dist-packages/odoo/models.py", line 3109, in write
    self._write(old_vals)
  File "/usr/lib/python3/dist-packages/odoo/models.py", line 3277, in _write
    self._validate_fields(vals)
  File "/usr/lib/python3/dist-packages/odoo/models.py", line 1041, in _validate_fields
    raise ValidationError("%s\n\n%s" % (_("Error while validating constraint"), tools.ustr(e)))
odoo.exceptions.ValidationError: ('Error mientras se validaban las restricciones\n\nEl campo `ordenventa_ids` no existe\n\nContexto del error:\nVista `efact.view.form.guia.remision`\n[view_id: 877, xml_id: efact.view_form_guia_remision, model: efact.guia_remision, parent_id: n/a]', None)

During handling of the above exception, another exception occurred:
Avatar
Discard
Best Answer

Hi, GiancaFTx


As per the error it seems you have not upgraded module after adding this field in your model. So kindly upgrade model after restartingyour Odoo server.

In case you still have the same issue then please share your view and model file.

Thanks,
Ashish Singh (Team Lead)
Webkul Software Private Limited


Avatar
Discard
Author

it's weird, restart it several times. works by turning off the pc.thanks

Hi, Gianca

Great to know that your issue has been resolved.

Might be due to multiple Odoo process your changes was not reflecting on your Odoo. So after restarting your system it's working fine because all the existing processes has been killed.

In future if you face the same issue then you can try below command in order to check this issue.

ps aux | grep python

Then it show the list of processes. In order to kill that process you can use below commands,

Using Process Name : pkill python

Using Process ID : kill -9 5511 5121

Thanks,

Ashish Singh