在合作伙伴表单上,如果您的合作伙伴选择了他们的国家,则“州”字段有一个domain。这意味着如果您选择“美国”作为 Country,那么它只会显示 States 也有 Country 为“United States” "
但是,即使没有选择Country,它仍然会限制Search more...中显示的States的数量弹出窗口。
我不知道为什么,但如果你:
- 点击弹出窗口中的搜索...栏
- 按 Enter(重新搜索列表)
然后它会返回所有可用的States...
这似乎是一个没有计划修复的已知问题(至少在修复后不向后移植到稳定版本)。请参阅这些 Github 问题报告(如下)。这在 Odoo 11 上仍然存在,即使在 demo.odoo.com
- Search more unpredictable
- [V8] only 80 of 160 taxes are shown: reality 2651
有一些方法可以解决这个问题,但它需要修改 JavaScript(正如您在问题中提到的那样,您可能已经对此有所了解)。你可以在 Odoo 论坛上看到this question,里面有几个 sn-ps。
基本上,该解决方案需要覆盖name_search 函数之外的addons/web/static/src/js/framwork/data.js
name_search: function (name, domain, operator, limit) {
# This is the magic
limit = 0;
# Just the above line
return this._model.call('name_search', {
name: name || '',
args: domain || false,
operator: operator || 'ilike',
context: this._model.context(),
limit: limit || 0
});
},
注意:这将全局影响您的所有 Odoo。如果您想将其限制为仅一种形式(或某些其他条件),那么您必须使用用于定义 JavaScript 导入的任何视图/模板来执行此操作。
上一个答案
修改它的正常方法是在 XML 或 GUI 中更改默认的limit of a Window Action,默认情况下会显示更多或更少的记录。
- 启用开发者模式
- 导航到要从中删除限制的树视图
- 单击“调试”按钮(Odoo 右上角的错误图标,用户名旁边)
- 点击“编辑操作”
- 更改“限制”值并保存
- 0 或 -1 的限制应该可以实现无限列表,但您可能需要测试几个不同的值,看看哪个效果最好。
- 如果这些都不能正常工作,那么您可以将 Limit 更改为 999999 或更高的值。
注意事项:
-
您还可以在 Action 上通过 XML 定义 limit 更改。
<field name=“limit”>0</field>
-
您也可以直接在tree 元素上设置limit 属性。
同样,您可能必须对此进行测试以查看哪个值提供了无限列表,但您可以像这样使用它(在树视图 XML 定义中):
<tree id=“...” string=“...” limit=“0”/>