无法在odoo视图中导入模型

时间:2017-02-15 23:14:38

标签: python ubuntu model openerp odoo-10

我在linux上安装了odoo 10,它运行正常 我正在关注odoo网站“构建模块”的官方教程

https://www.odoo.com/documentation/10.0/howtos/backend.html#build-an-odoo-module

我用

创建了一个空模块
Error context:
View `course.form`

[view_id: 4867, xml_id: n/a, model: openacademy.course, parent_id: n/a]
None" while parsing /opt/odoo/odoo-

10.0/addons/openacademy/views/openacademy.xml:6, near
<record model="ir.ui.view" id="course_form_view">
        <field name="name">course.form</field>
        <field name="model">openacademy.course</field>
        <field name="arch" type="xml">
            <form string="Course Form">
                <sheet>
                    <group>
                        <field name="name"/>
                        <field name="description"/>
                    </group>
                </sheet>
            </form>
        </field>
    </record>

但是当我尝试将模块导入到xml文件 openacademy.xml 时,我收到以下错误

 <?xml version="1.0" encoding="utf-8"?>
   <odoo>
    <data>
        <record model="ir.ui.view" id="course_form_view">
            <field name="name">`course.form`</field>
            <field name="model">`openacademy.course`</field>
            <field name="arch" type="xml">
                <form string="Course Form">
                    <sheet>
                        <group>
                            <field name="name"/>
                            <field name="description"/>
                        </group>
                    </sheet>
                </form>
            </field>
        </record>  
  </data>
</odoo>

openacademy.xml

from odoo import models, fields, api

class Course(models.Model):
_name = 'openacademy.course'

name = fields.Char(string="Title", required=True)
description = fields.Text()

models.py

from . import models

__初始化__。PY

{
    "_id" : ObjectId("5893ae4f7a5449caebba5848"),
    "id" : NumberLong(1234567890),
    "inserted_at" : ISODate("2017-02-02T22:10:23.812Z")
}

3 个答案:

答案 0 :(得分:0)

__ init __。py 中尝试使用

import models

答案 1 :(得分:0)

尝试替换此代码:

 <field name="name">course.form</field>
 <field name="model">openacademy.course</field>

你不能使用&#34;&#39;&#39;&#34;在XML中,它会导致错误。 然后在像

这样的行的开头休息一些空格
 from odoo import models, fields, api
 class Course(models.Model):
      _name = "openacademy.course"

      name = fields.Char(string="Title", required=True)
      description = fields.Text()

答案 2 :(得分:0)

样本没有问题&#34;构建模块&#34; init .py(来自https://www.odoo.com/documentation/10.0/howtos/backend.html)它正在addons / openacademy / models下导入模型。

在我的情况下,我必须重新启动odoo(杀死当前的odoo-bin并重启)。导入错误&#34; openacademy.course&#34;走了,安装成功了。