Skip to Content
Menu
This question has been flagged
3 Replies
4074 Views
View is working fine but when I use tree view then this error? Please give me some clue.

Traceback (most recent call last): File "C:\mydrive\odoo\odoo_dev\odoo\odoo\tools\convert.py", line 537, in _tag_root f(rec) File "C:\mydrive\odoo\odoo_dev\odoo\odoo\tools\convert.py", line 437, in _tag_record record = model._load_records([data], self.mode == 'update') ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\mydrive\odoo\odoo_dev\odoo\odoo\models.py", line 5472, in _load_records records = self._load_records_create([data['values'] for data in to_create]) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\mydrive\odoo\odoo_dev\odoo\odoo\models.py", line 5376, in _load_records_create records = self.create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^ File "<decorator-gen-9>", line 2, in create File "C:\mydrive\odoo\odoo_dev\odoo\odoo\api.py", line 480, in _model_create_multi return create(self, arg) ^^^^^^^^^^^^^^^^^ File "C:\mydrive\odoo\odoo_dev\odoo\odoo\addons\base\models\ir_ui_view.py", line 514, in create result = super(View, self.with_context(ir_ui_view_partial_validation=True)).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "<decorator-gen-0>", line 2, in create File "C:\mydrive\odoo\odoo_dev\odoo\odoo\api.py", line 480, in _model_create_multi return create(self, arg) ^^^^^^^^^^^^^^^^^ File "C:\mydrive\odoo\odoo_dev\odoo\odoo\models.py", line 4980, in create records = self._create(data_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "C:\mydrive\odoo\odoo_dev\odoo\odoo\models.py", line 5147, in _create row.append(field.convert_to_column_insert(stored[fname], self, stored)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\mydrive\odoo\odoo_dev\odoo\odoo\fields.py", line 982, in convert_to_column_insert value = self.convert_to_column(value, record, values, validate) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\mydrive\odoo\odoo_dev\odoo\odoo\fields.py", line 2925, in convert_to_column value = self.convert_to_cache(value, record) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\mydrive\odoo\odoo_dev\odoo\odoo\fields.py", line 2935, in convert_to_cache raise ValueError("Wrong value for %s: %r" % (self, value)) ValueError: Wrong value for ir.ui.view.type: 'tree' The above exception was the direct cause of the following exception: Traceback (most recent call last): File "C:\mydrive\odoo\odoo_dev\odoo\odoo\http.py", line 1954, in _transactioning return service_model.retrying(func, env=self.env) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\mydrive\odoo\odoo_dev\odoo\odoo\service\model.py", line 137, in retrying result = func() ^^^^^^ File "C:\mydrive\odoo\odoo_dev\odoo\odoo\http.py", line 1921, in _serve_ir_http response = self.dispatcher.dispatch(rule.endpoint, args) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\mydrive\odoo\odoo_dev\odoo\odoo\http.py", line 2168, in dispatch result = self.request.registry['ir.http']._dispatch(endpoint) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\mydrive\odoo\odoo_dev\odoo\odoo\addons\base\models\ir_http.py", line 330, in _dispatch result = endpoint(**request.params) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\mydrive\odoo\odoo_dev\odoo\odoo\http.py", line 728, in route_wrapper result = endpoint(self, *args, **params_ok) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "c:\mydrive\odoo\odoo_dev\odoo\addons\web\controllers\dataset.py", line 40, in call_button action = call_kw(request.env[model], method, args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\mydrive\odoo\odoo_dev\odoo\odoo\api.py", line 517, in call_kw result = getattr(recs, name)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Program Files\Python312\Lib\site-packages\decorator.py", line 232, in fun return caller(func, *(extras + args), **kw) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\mydrive\odoo\odoo_dev\odoo\odoo\addons\base\models\ir_module.py", line 75, in check_and_log return method(self, *args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\mydrive\odoo\odoo_dev\odoo\odoo\addons\base\models\ir_module.py", line 668, in button_immediate_upgrade return self._button_immediate_function(self.env.registry[self._name].button_upgrade) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\mydrive\odoo\odoo_dev\odoo\odoo\addons\base\models\ir_module.py", line 601, in _button_immediate_function registry = modules.registry.Registry.new(self._cr.dbname, update_module=True) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Program Files\Python312\Lib\site-packages\decorator.py", line 232, in fun return caller(func, *(extras + args), **kw) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\mydrive\odoo\odoo_dev\odoo\odoo\tools\func.py", line 97, in locked return func(inst, *args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\mydrive\odoo\odoo_dev\odoo\odoo\modules\registry.py", line 131, in new odoo.modules.load_modules(registry, force_demo, status, update_module) File "C:\mydrive\odoo\odoo_dev\odoo\odoo\modules\loading.py", line 475, in load_modules processed_modules += load_marked_modules(env, graph, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\mydrive\odoo\odoo_dev\odoo\odoo\modules\loading.py", line 363, in load_marked_modules loaded, processed = load_module_graph( ^^^^^^^^^^^^^^^^^^ File "C:\mydrive\odoo\odoo_dev\odoo\odoo\modules\loading.py", line 226, in load_module_graph load_data(env, idref, mode, kind='data', package=package) File "C:\mydrive\odoo\odoo_dev\odoo\odoo\modules\loading.py", line 70, in load_data tools.convert_file(env, package.name, filename, idref, mode, noupdate, kind) File "C:\mydrive\odoo\odoo_dev\odoo\odoo\tools\convert.py", line 608, in convert_file convert_xml_import(env, module, fp, idref, mode, noupdate) File "C:\mydrive\odoo\odoo_dev\odoo\odoo\tools\convert.py", line 679, in convert_xml_import obj.parse(doc.getroot()) File "C:\mydrive\odoo\odoo_dev\odoo\odoo\tools\convert.py", line 594, in parse self._tag_root(de) File "C:\mydrive\odoo\odoo_dev\odoo\odoo\tools\convert.py", line 550, in _tag_root raise ParseError('while parsing %s:%s, somewhere inside\n%s' % ( odoo.tools.convert.ParseError: while parsing file:/c:/mydrive/odoo/odoo_dev/tutorials/landmangement/views/land_views.xml:3, somewhere inside <record id="land_plot_view_tree" model="ir.ui.view"> <field name="name">land.plot.view.tree</field> <field name="model">land.plot</field> <field name="arch" type="xml"> <tree string="Plot"> <field name="plotno"/> </tree> </field> </record> The above server error caused the following client error: RPC_ERROR: Odoo Server Error RPC_ERROR at makeErrorFromResponse (http://localhost:8069/web/assets/debug/web.assets_web.js:29199:19) at XMLHttpRequest.<anonymous> (http://localhost:8069/web/assets/debug/web.assets_web.js:29253:27)


model is 


from odoo import fields,models


class LandPlot(models.Model):   

 _name="land.plot"   

 _description="Plot"


    plotno = fields.Char("Plot No")    

plotsize = fields.Char("Plot Size")   

 section = fields.Char("Section")   

 block = fields.Char("Block")    

road = fields.Char("Section")   

 position = fields.Char("Position")


Avatar
Discard
Best Answer

Hi,

In Odoo 18, the <tree> tag has been replaced with the <list> tag. To resolve this issue, change the <tree> tag in your XML file to <list>. 

Here's how the corrected code should look:


<odoo>

    <record id="land_plot_view_tree" model="ir.ui.view">

        <field name="name">land.plot.view.tree</field>

        <field name="model">land.plot</field>

        <field name="arch" type="xml">

            <list string="Plot">

                <field name="plotno"/>

            </list>

        </field>

    </record>

</odoo>


Hope this helps.

Avatar
Discard

Hi Cybrosys, how do you manage to stay on top of all the changes between versions? Is there a discussion forum or group where changes such as changing tree to list tag and other things are discussed???

Hello @wombat,

If you follow the commits the branch `master` in Github you will see incoming updates with much anticipation.

The odoo experience events are a good place to know have what is new in each release.

Also the release notes are very useful to have a complete list of most relevant changes.

Best Answer

Hi,
To unify the usage of tree and list and to make the name more generic from odoo 18, the tree tag has been replaced with list tag and to make developers life easier during the code migration, odoo has provided a new CLI upgrade_code command for this automatic conversion

See: Upgrade Code Command in Odoo 18

Thanks

Avatar
Discard
Author Best Answer

Thanks

Avatar
Discard