首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Openerp中使用Domain

在Openerp中使用Domain
EN

Stack Overflow用户
提问于 2015-12-21 17:36:38
回答 1查看 28关注 0票数 1

我有两个表module_level和module_category:

代码语言:javascript
复制
class module_categories(osv.osv):

    _name ='module.category'
    _description ="Module Category"
    _columns = {
    'mod_cat_id':fields.integer('id'),
    'name':fields.char('Category', size=20),
    'module_levels':fields.one2many('module.level', 'mod_level_id', 'Level', select=True, required=True),
    }
module_categories()

class module_level(osv.osv):

    _name ='module.level'
    _description ="Module Level"
    _columns = {
    'mod_level_id': fields.many2one('module.category', 'ID', ondelete='cascade', help='Module Category', select=True, readonly=1),
    'name':fields.char('Enter Levels', size=20),
    }

module_level()

和XML:

代码语言:javascript
复制
<record id="category_form" model="ir.ui.view">
            <field name="name">Module Category</field>
            <field name="model">module.category</field>
            <field name="arch" type="xml">
                <form string="Module Category" version="7.0" >
                    <sheet>
                        <group  col="9">
                            <field name = "name"/>
                        </group>
                         <group col="2">
                          <field name='module_levels'  nolabel='1' >
                              <tree string="Module Level" editable="bottom" class="grey_border">
                                <field name = "name" placeholder="Enter Levels"/>
                              </tree>
                          </field>
                         </group>
                    </sheet>
                </form>
           </field>
    </record>

这两个表表明,在module_category中,我们在树视图中创建了number if module_level。

例如:在module_category中有3个module_level。

现在我的问题是:我在不同的表中调用这两个字段。

.py:

代码语言:javascript
复制
'module_category': fields.many2one('module.category', 'Category', ondelete='cascade', help='Category', select=True),
'module_level': fields.many2one('module.level', 'Level', ondelete='cascade', help='Level', select=True),

.xml:

代码语言:javascript
复制
<div class="col-3">
   <label for="module_category" />
   <field name="module_category" widget="selection/"  readonly="context.get('ctx', False)"/>
  </div>
 <div class="col-3">
    <label for="module_level" />
    <field name="module_level" domain="[('module_category','=',module_category)]"   options="{'create': False, 'create_edit': False}" readonly="context.get('ctx', False)"/>
 </div>

当我选择module_category时,它应该显示属于它的特定module_level。它不应显示module_level表中存在的所有module_level。

我在module_level中写了域名:domain="[('module_category','=',module_category)]"

当我点击module_level时,我得到了这个错误:ValueError: Invalid field u'module_category' in leaf "<osv.ExtendedLeaf: (u'module_category', u'=', False) on module_level (ctx: )>"

如何获取?它应该显示属于module_category的特定module_level?

希望你能理解这个问题!

EN

Stack Overflow用户

发布于 2015-12-21 18:24:31

问题已解决:.py文件中存在错误:

代码语言:javascript
复制
class module_categories(osv.osv):

    _name ='module.categories'
    _description ="Module Category"
    _columns = {
    'mod_cat_id':fields.integer('id'),
    'name':fields.char('Category', size=20),
    'module_levels':fields.one2many('module.levels', 'module_category', 'Level', select=True, required=True),
    }
module_categories()

class module_level(osv.osv):

    _name ='module.levels'
    _description ="Module Level"
    _columns = {
    'module_category': fields.many2one('module.categories', 'ID', ondelete='cascade', help='Module Category', select=True, readonly=1),
    'name':fields.char('Enter Levels', size=20),
    }

module_level()

我在module_category字段中犯了错误。

票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34392593

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档