Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 类型错误:';查询';对象在Odoo 10中不可编辑_Python - Fatal编程技术网

Python 类型错误:';查询';对象在Odoo 10中不可编辑

Python 类型错误:';查询';对象在Odoo 10中不可编辑,python,Python,有人能帮我解决这个错误吗,因为我在代码行中没有发现任何错误(如果soline.adv\u issue\u id而不是soline.issue\u product\u id:) 我想做的是: 在IF条件下,我试图从对象sale.order.line获取many2many(adv_issue_id)和one2many(issue_product_id)字段的值。 代码行中使用的变量的详细信息: soline是一个销售订单行记录集(例如:sale.order.line(129)) adv\u issu

有人能帮我解决这个错误吗,因为我在代码行中没有发现任何错误(如果soline.adv\u issue\u id而不是soline.issue\u product\u id:

我想做的是:

在IF条件下,我试图从对象sale.order.line获取many2many(adv_issue_id)和one2many(issue_product_id)字段的值。

代码行中使用的变量的详细信息:

soline是一个销售订单行记录集(例如:sale.order.line(129))

adv\u issue\u id是sale.order.line中的多个字段

issue\u product\u ID是sale.order.line中的一个多字段

请在下面查找错误日志

File "/workspace/parts/my_module/wizard/sale_line.py", line 76, in function_name
**if soline.adv_issue_ids and not soline.issue_product_ids:**
File "/workspace/parts/odoo/odoo/fields.py", line 931, in __get__
self.determine_value(record)
File "/workspace/parts/odoo/odoo/fields.py", line 1035, in determine_value
record._prefetch_field(self)
File "/workspace/parts/odoo/odoo/models.py", line 3087, in _prefetch_field
result = records.read([f.name for f in fs], load='_classic_write')
File "/workspace/parts/odoo/odoo/models.py", line 3027, in read
self._read_from_database(stored, inherited)
File "/workspace/parts/odoo/odoo/models.py", line 3117, in _read_from_database
self._apply_ir_rules(query, 'read')
File "/workspace/parts/odoo/odoo/models.py", line 4131, in _apply_ir_rules
where_clause, where_params, tables = Rule.domain_get(self._name, mode)
**TypeError: 'Query' object is not iterable**

提前感谢

查询对象不可编辑,因此使用all()函数获取所有值


请尝试
query.all()

您好,高丽·尚卡尔,谢谢您的快速回复。实际上,“soline”是一个销售订单行记录集(例如:sale.order.line(129)),我们应该能够获得该对象sale.order.line的任何字段的值。但是这个错误看起来很奇怪。再次感谢。我刚刚尝试了soline.all(),但我得到了以下错误---AttributeError:“sale.order.line”对象没有属性“all”。如果您需要有关此错误的更多信息,请告诉我,以便您能够帮助我。谢谢@Praveen如果检查,请您共享包含此
的模块。嗨,Gauri,共享整个模块有点困难,但我可以共享获取此错误的方法。希望这能给你一些想法。谢谢
@api.multi
def function\u name(self,orderlines=[]):
sol\u obj=self.env['sale.order.line']
olines=sol\u obj.browse(orderlines)
line=[[[]
如果soline.adv\u发布id而不是soline.issue\u产品id:
引发用户错误('orderline出错。请更正!')我不能理解你的代码,但我会试试看。在您的代码点击
if
子句之前,您能否打印出
soline.adv\u issue\u id
not soline.issue\u id
的类型和值并在此处共享?