AssertionError: элемент odoo имеет дополнительное содержимое: запись, строка 3 - - - Odoo13

Я пытаюсь добавить меню под Actions. Но я получаю ошибку ниже.

* .xml

Наконец, я нашел решение. Я только что удалилActions тег. И добавил поле

  <?xml version="1.0" encoding="utf-8"?>
  <odoo>
    <record id="import_image_view_form" model="ir.ui.view">
      <field name="name">import.image.form</field>
      <field name="model">import.image</field>
      <field name="arch" type="xml">
        <form string="Import Images">
          <group >
              <field widget="binary" height="64" name="file" filename="file_fname" required="1"/>
              <field name="file_fname" invisible="1"/>
          </group>

          <footer>
            <button name="get_file" type="object" class="oe_highlight" string="Load File" style="width:75px;"/>
            <button string="Cancel" class="btn-default" special="cancel"/>
          </footer>
        </form>
      </field>
    </record>
    <record id="import_image_action_form" model="ir.actions.act_window">
      <field name="name">Import product images</field>
      <field name="res_model">import.image</field>
      <field name="view_mode">form</field>
      <field name="view_id" ref="import_image_view_form"/>
      <field name="target">new</field>
    </record>

      <act_window
        name="Import Product Image"
        id="action_import_product_image"
        res_model="import.image"
        src_model="product.template"
        target="new" multi="True" key2="client_action_multi"/>

  </odoo>
в _3_.

  <?xml version="1.0" encoding="utf-8"?>
  <odoo>
    <record id="import_image_view_form" model="ir.ui.view">
      <field name="name">import.image.form</field>
      <field name="model">import.image</field>
      <field name="arch" type="xml">
        <form string="Import Images">
          <group >
              <field widget="binary" height="64" name="file" filename="file_fname" required="1"/>
              <field name="file_fname" invisible="1"/>
          </group>

          <footer>
            <button name="get_file" type="object" class="oe_highlight" string="Load File" style="width:75px;"/>
            <button string="Cancel" class="btn-default" special="cancel"/>
          </footer>
        </form>
      </field>
    </record>
    <record id="import_image_action_form" model="ir.actions.act_window">
      <field name="name">Import product images</field>
      <field name="res_model">import.image</field>
      <field name="view_mode">form</field>
      <field name="view_id" ref="import_image_view_form"/>
      <field name="target">new</field>
    </record>

      <act_window
        name="Import Product Image"
        id="action_import_product_image"
        res_model="import.image"
        src_model="product.template"
        target="new" multi="True" key2="client_action_multi"/>

  </odoo>

person KbiR    schedule 24.12.2019    source источник
comment
На самом деле тег _1_ вызывает ошибку. Когда я комментирую, он работает нормально. Я копирую строку из модуля odoo по умолчанию, все та же ошибка.   -  person Charif DZ    schedule 24.12.2019
comment
Понятно. Вы не передаете параметр <act_window/> в действии. Я обновил свой ответ, вы можете попробовать.   -  person KbiR    schedule 26.12.2019
comment
@MayurJotaniya, попробовала view_mode, но безуспешно.   -  person Mayur Jotaniya    schedule 26.12.2019
comment
2019-12-24 11: 28: 28,309 22740 ОШИБКА odoo13 werkzeug: Ошибка по запросу: Отслеживание (последний вызов последним): Файл "/usr/local/lib/python3.6/dist-packages/werkzeug/serving.py" , строка 270, в run_wsgi execute (self.server.app) Файл "/usr/local/lib/python3.6/dist-packages/werkzeug/serving.py", строка 258, в execute application_iter = app (environment, start_response ) Файл "/home/user/Projects/odoo_13.0.EE/odoo/service/server.py", строка 414, в приложении return self.app (e, s) File "/ home / user / Projects / odoo_13. 0.EE/odoo/service/wsgi_server.py ", строка 142, в приложении return application_unproxied (environment, start_response) File" /home/user/Projects/odoo_13.0.EE/odoo/service/wsgi_server.py ", строка 117, в application_unproxied result = odoo.http.root (environment, start_response) Файл "/home/user/Projects/odoo_13.0.EE/odoo/http.py", строка 1281, в вызове вернуть файл self.dispatch (environment, start_response) "/home/user/Projects/odoo_13.0.EE /odoo/http.py ", строка 1251, в вызове return self.app (environment, start_wrapped) File" /usr/local/lib/python3.6/dist-packages/werkzeug/wsgi. py ", строка 766, в вызове return self.app (environment, start_response) Файл" /home/user/Projects/odoo_13.0.EE/odoo/http.py ", строка 1433, в dispatch odoo.registry (db) .check_signaling () Файл "/home/user/Projects/odoo_13.0.EE/odoo/ init .py", строка 104, в реестре возвращает файл modules.registry. Файл реестра (имя_базы_данных) "/home/user/Projects/odoo_13.0.EE/odoo/modules/registry.py", строка 61, в новом файле возврата cls.new (db_name) "/ home / user / Projects / odoo_13.0.EE / odoo / modules / registry.py ", строка 85, в новом файле odoo.modules.load_modules (registry._db, force_demo, status, update_module) File" / home / user / Projects /odoo_13.0.EE/odoo/modules/loading.py ", строка 416, в load_modules force, status, report, loaded_modules, update_module, models_to_check) Файл "/home/user/Projects/odoo_13.0.EE/odoo/modules/loading.py", строка 312, в load_marked_modules perform_checks = perform_checks, models_to_check = models_to_check Файл "/home/user/Projects/odoo_13.0.EE /odoo/modules/loading.py ", строка 222, в load_module_graph load_data (cr, idref, mode, kind = 'data', package = package, report = report) File" /home/user/Projects/odoo_13.0. EE / odoo / modules / loading.py ", строка 68, в load_data tools.convert_file (cr, package.name, filename, idref, mode, noupdate, kind, report) File" / home / user / Projects / odoo_13. 0.EE/odoo/tools/convert.py ", строка 737, в файле convert_file convert_xml_import (cr, module, fp, idref, mode, noupdate, report) File" /home/user/Projects/odoo_13.0.EE/odoo /tools/convert.py ", строка 787, в convert_xml_import relaxng.assert_ (doc) Файл" src / lxml / etree.pyx ", строка 3536, в lxml.etree. Validator.assert
AssertionError: элемент odoo имеет дополнительное содержимое: запись, строка 3 - - -   -  person KbiR    schedule 01.01.2020


Ответы (2)


оно работает.

<record id="import_image_action_form" model="ir.actions.act_window">
  <field name="name">Import product images</field>
  <field name="res_model">import.image</field>
  <field name="view_mode">form</field>
  <field name="view_id" ref="import_image_view_form"/>
  <field name="target">new</field>
  <field name="binding_model_id" ref="account.model_product_template" />
</record>

Вы не упомянули act_window в своем binding_model_id коде. Я его обновил. Пожалуйста, попробуйте код ниже.

person KbiR    schedule 01.01.2020

Эта ошибка может возникнуть, если вы пропустили по буквам тег или случайно добавили какой-либо контент. просто прокомментируйте записи, и одна из них вызывает проблему. Я использую эту технику специально, когда не вижу ошибок, как в вашем случае

<?xml version="1.0" encoding="utf-8"?>
<odoo>
    <data>

        <record id="import_image_view_form" model="ir.ui.view">
          <field name="name">import.image.form</field>
          <field name="model">import.image</field>
          <field name="arch" type="xml">
            <form string="Import Images">
              <group >
                  <field widget="binary" height="64" name="file" filename="file_fname" required="1"/>
                  <field name="file_fname" invisible="1"/>
              </group>

              <footer>
                <button name="get_file" type="object" class="oe_highlight" string="Load File" style="width:75px;"/>
                <button string="Cancel" class="btn-default" special="cancel"/>
              </footer>
            </form>
          </field>
        </record>

        <record id="import_image_action_form" model="ir.actions.act_window">
          <field name="name">Import product images</field>
          <field name="res_model">import.image</field>
          <field name="view_mode">form</field>
          <field name="view_id" ref="import_image_view_form"/>
          <field name="target">new</field>
        </record>

        <act_window 
            name="Import Product Image"
            res_model="import.image"
            src_model="product.template"
            view_mode="form"
            target="new"
            multi="True"
            key2="client_action_multi"
            id="action_import_product_image" />
    </data>
</odoo>
person Mayur Jotaniya    schedule 24.12.2019