尝试使用jquery mobile构建的openERP 6.1内置移动应用程序。
我有自己的模块”学校.学生“,当我点击学生我看到学生树,当我点击任何特定的学生我得到错误
File "/opt/openerp/server/openerp/osv/fields.py", line 551, in get
ids2 = obj.pool.get(self._obj).search(cr, user,
self._domain + [(self._fields_id, 'in', ids)],
limit=self._limit, context=context)
AttributeError: 'NoneType' object has no attribute 'search'
好像它不是在获取这里讨论的对象是school.student
web或gtk客户端没有类似错误,只有新的移动客户端。
当我访问其他对象时,不会出现这样的错误学校。课程甚至school.course.subjects
。只有一个窗体视图学校.学生不会打开的。你知道为什么会这样吗?在
编辑:回溯
2012-09-07 13:57:47,199 17516 INFO ? werkzeug: 192.168.100.106 - - [07/Sep/2012 13:57:47] "GET /favicon.ico HTTP/1.1" 404 -
> /opt/openerp/server/openerp/osv/fields.py(554)get()
-> for r in obj.pool.get(self._obj)._read_flat(cr, user, ids2, [self._fields_id], context=context, load='_classic_write'):
(Pdb) ids2
[]
(Pdb) c
> /opt/openerp/server/openerp/osv/fields.py(554)get()
-> for r in obj.pool.get(self._obj)._read_flat(cr, user, ids2, [self._fields_id], context=context, load='_classic_write'):
(Pdb) ids2
[]
(Pdb) c
> /opt/openerp/server/openerp/osv/fields.py(554)get()
-> for r in obj.pool.get(self._obj)._read_flat(cr, user, ids2, [self._fields_id], context=context, load='_classic_write'):
(Pdb) ids2
[]
(Pdb) c
2012-09-07 13:58:03,198 17516 ERROR ? openerp.osv.osv: Uncaught exception
Traceback (most recent call last):
File "/opt/openerp/server/openerp/osv/osv.py", line 121, in wrapper
return f(self, dbname, *args, **kwargs)
File "/opt/openerp/server/openerp/osv/osv.py", line 176, in execute
res = self.execute_cr(cr, uid, obj, method, *args, **kw)
File "/opt/openerp/server/openerp/osv/osv.py", line 164, in execute_cr
return getattr(object, method)(cr, uid, *args, **kw)
File "/opt/openerp/server/openerp/osv/orm.py", line 3381, in read
result = self._read_flat(cr, user, select, fields, context, load)
File "/opt/openerp/server/openerp/osv/orm.py", line 3504, in _read_flat
res2 = self._columns[f].get(cr, self, ids, f, user, context=context, values=res)
File "/opt/openerp/server/openerp/osv/fields.py", line 552, in get
ids2 = obj.pool.get(self._obj).search(cr, user, self._domain + [(self._fields_id, 'in', ids)], limit=self._limit, context=context)
AttributeError: 'NoneType' object has no attribute 'search'
2012-09-07 13:58:03,202 17516 ERROR ? openerp.netsvc: 'NoneType' object has no attribute 'search'
2012-09-07 13:58:03,208 17516 INFO ? werkzeug: 192.168.100.106 - - [07/Sep/2012 13:58:03] "POST /web/dataset/search_read HTTP/1.1" 200 -
问题是}。在
self._obj
返回的值在pool
中不是,所以当你用get
方法从pool
获取对象时,它试图从dict
中找到键,但由于该键在pool
中不存在,它返回{如果这在GTK或WEB中不会得到错误,那么请尝试在所有客户端中显示
self._obj
。在相关问题 更多 >
编程相关推荐