当“hr.employee”或任何其他具有 Many2many 字段的模型继承到我在 odoo13 中的模型时,会抛出此错误。
Traceback (most recent call last):
File "/opt/odoo/odoo/modules/registry.py", line 59, in __new__
return cls.registries[db_name]
File "/opt/odoo/odoo/tools/func.py", line 69, in wrapper
return func(self, *args, **kwargs)
File "/opt/odoo/odoo/tools/lru.py", line 44, in __getitem__
a = self.d[obj].me
KeyError: 'shorepoint'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/odoo/odoo/modules/registry.py", line 85, in new
odoo.modules.load_modules(registry._db, force_demo, status, update_module)
File "/opt/odoo/odoo/modules/loading.py", line 423, in load_modules
registry.setup_models(cr)
File "/opt/odoo/odoo/modules/registry.py", line 247, in setup_models
model._setup_fields()
File "/opt/odoo/odoo/models.py", line …Run Code Online (Sandbox Code Playgroud) 我正在使用一个名为env执行 Odoo 的 Python virtualenv。在 virtualenvbin目录中,我得到了这个:
pip
pip3
pip3.8
python -> /usr/bin/python3
python3 -> python
python3.8 -> python
Run Code Online (Sandbox Code Playgroud)
Odoo 服务正在运行此命令来执行 Odoo(如您所见,使用python3.8virtualenv 的):
ExecStart=/opt/odoo/env/bin/python3.8 /opt/odoo/odoo_13/src/oca/OCB/odoo-bin -c /opt/odoo/odoo_13/config/.odoo.conf
Run Code Online (Sandbox Code Playgroud)
问题是,Odoo 时不时地会给出以下严重错误,并且实例停止工作:
ModuleNotFoundError:没有名为“werkzeug”的模块
似乎该werkzeug软件包尚未安装,但是,如果我执行以下操作:
anubia@my-server:/opt/odoo$ . env/bin/activate
(env) anubia@my-server:/opt/odoo$ which pip
/opt/odoo/env/bin/pip
(env) anubia@my-server:/opt/odoo$ which pip3
/opt/odoo/env/bin/pip3
(env) anubia@my-server:/opt/odoo$ which pip3.8
/opt/odoo/env/bin/pip3.8
(env) anubia@my-server:/opt/odoo$ pip3.8 install werkzeug
Requirement already satisfied: werkzeug in ./env/lib/python3.8/site-packages (0.11.15)
(env) anubia@my-server:/opt/odoo$ cd env/lib/python3.8/site-packages/
Display all 125 possibilities? (y or n)
Babel-2.9.1.dist-info/ …Run Code Online (Sandbox Code Playgroud)
我正在 Odoo 13 上生成 .docx 文档,我检查了“report_py3o”模块,但没有适用于 Odoo 13 的版本,所以我决定进行某种迁移(我刚刚删除了“@api.multi”) Odoo 12 版本到 Odoo 13。我收到了类似odoo.exceptions.CacheMiss: ('ir.actions.report(85,).is_py3o_report_not_available', None) 的错误,我的数据库已损坏。这是完整的日志:错误日志。
odoo.exceptions.CacheMiss: ('ir.actions.report(85,).is_py3o_report_not_available', None)
Run Code Online (Sandbox Code Playgroud)
我还检查了航空模块,但它仅适用于 8.0 和 9.0。
你能帮助我吗?你有替代品吗?
我有名为theme_test的基本主题 ,这是模板代码(此模板添加在清单的数据中)。
<template id="product_catg_test" name="Product Category">
<t t-if="categories">
<code for print category>
</t>
</template>
Run Code Online (Sandbox Code Playgroud)
所以我创建了一个名为test_theme_extended的扩展模块,并尝试了两种继承方法来替换t-if条件
<template id="product_catg_test_extended" inherit_id="theme_test.product_catg_test" name="Test">
<xpath expr="//t[@t-if='categories']" position="replace"></xpath>
</template>
Run Code Online (Sandbox Code Playgroud)
第一种方法给了我一个错误
odoo.tools.convert.ParseError:“元素 '' 无法位于父视图中
<t t-extend="theme_test.product_catg_test">
<t t-jquery="t[t-if='categories']" t-operation="replace"/>
</t>
Run Code Online (Sandbox Code Playgroud)
这也行不通。
我认为主视图是从主题创建的,并且没有外部 ID,这就是我面临这个问题的原因。但是如何继承扩展模块中的基本主题视图呢?
我正在从 Odoo V13 升级到 V15,并且在构建临时分支时遇到错误,因为我编写了一个用于更改某些样式的自定义模块。
我该如何修复以下错误
File "/home/odoo/src/odoo/odoo/addons/base/models/ir_model.py", line 1928, in _xmlid_lookup
raise ValueError('External ID not found in the system: %s' % xmlid)
ValueError: External ID not found in the system: website.assets_frontend
Run Code Online (Sandbox Code Playgroud)
File "/home/odoo/src/odoo/odoo/tools/convert.py", line 693, in _tag_root
raise ParseError('while parsing %s:%s, somewhere inside\n%s' % (
odoo.tools.convert.ParseError: while parsing None:4, somewhere inside
<data inherit_id="website.assets_frontend" name="Profile Frontend Assets">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website_profile_scss_customization/static/src/scss/website_profile.scss" t-ignore="true"/>
</xpath>
</data>
Run Code Online (Sandbox Code Playgroud)
完整错误输出
Traceback (most recent call last):
File "/home/odoo/src/odoo/odoo/tools/cache.py", line 85, in lookup
r …Run Code Online (Sandbox Code Playgroud) 我已经安装了Odoo版本10模块,但我没有在About部分下看到激活开发者模式.
我在odoo 12,我想迁移到odoo 13.这个代码,但我不知道什么是相当于src_model在Odoo 13。
<record model="ir.actions.act_window" id="complete_pieces_jointes">
<field name="name">Complete Pieces Jointes</field>
<field name="view_id" ref="view_id_3"/>
<field name="res_model">ir.attachment.moveto.subscription</field>
<field name="view_mode">form</field>
<field name="target">new</field>
<field name="src_model">ir.attachment</field>
<field name="type">ir.actions.act_window</field>
</record>
Run Code Online (Sandbox Code Playgroud)
你能帮助我吗?
我正在尝试将 QR 图像添加到 POS 收据中。我在正常发票中使用的有效代码如下:
<img t-att-src="'/report/barcode/?type=%s&value=%s&width=%s&height=%s'%('QR', o.qr_code_string, 150, 150)"/>
Run Code Online (Sandbox Code Playgroud)
对于收据,我将字符串导出为receipt.qr_string,并将以下行添加到收据的继承 XML 文件中:
<img t-att-src="'/report/barcode/?type=%s&value=%s&width=%s&height=%s'%('QR', receipt.qr_string, 150, 150)"/>
Run Code Online (Sandbox Code Playgroud)
但图像看起来像是一个断开的链接。我该如何实现这一目标?
我创建了一个自定义模块,其中包含此字段
record_file = fields.Binary(string='file', attachment=True, help='Upload the file')
Run Code Online (Sandbox Code Playgroud)
据我所知,attachment=True应该将我的图像或 pdf 保存到 ir.attachment 但在那里看不到任何内容
难道我做错了什么
当我导入 xlsx 表时,出现“RecursionError:超出最大递归深度”错误。我正在使用odoo v13。我的目标是,当“log_status”变为“Confirmed”状态时,应该调用一个指定的方法。为此,我使用 write 方法来调用此方法。我的python代码如下:
@api.model
def write(self, vals):
record = super(Transaction_log, self).write(vals)
if 'log_status' in vals and vals.get('log_status') == 'Confirmed':
self.action_confirm()
return record
def action_confirm(self):
self.write({'log_status': 'Confirmed'})
self.action_performed.create({'log_status': 'Confirmed', 'trans_log': self.id,
'performed_by': self.env.user.id, 'performed_time': datetime.now()})
return True
Run Code Online (Sandbox Code Playgroud)
提前致谢。
我试图在Ubuntu 20.04安装Odoo 13,我已按照不同的程序来安装它像这一个的例子,但我总是得到这个psycopg2错误(下这一段),当我达到安装要求的组件的步骤.txt,这个错误只发生在python虚拟环境中。
错误:
ERROR: Command errored out with exit status 1:
command: /opt/odoo/odoo-venv/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-7jyb6cog/psycopg2/setup.py'"'"'; __file__='"'"'/tmp/pip-install-7jyb6cog/psycopg2/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-7c07yrdu
cwd: /tmp/pip-install-7jyb6cog/psycopg2/
Complete output (40 lines):
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-x86_64-3.8
creating build/lib.linux-x86_64-3.8/psycopg2
copying lib/sql.py -> build/lib.linux-x86_64-3.8/psycopg2
copying lib/_ipaddress.py -> build/lib.linux-x86_64-3.8/psycopg2
copying lib/errorcodes.py -> build/lib.linux-x86_64-3.8/psycopg2
copying lib/_json.py -> build/lib.linux-x86_64-3.8/psycopg2
copying lib/tz.py -> build/lib.linux-x86_64-3.8/psycopg2
copying lib/__init__.py -> build/lib.linux-x86_64-3.8/psycopg2
copying lib/pool.py …Run Code Online (Sandbox Code Playgroud) 再会!
有没有办法在 Odoo 的树视图上方添加一个按钮?
每当用户单击按钮时,我想运行一个函数。
如果这是不可能的,你能帮我提供替代方案吗?
这是我的代码:
'''<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="account_payment_import_view_tree" model="ir.ui.view">
<field name="name">account.payment.import.view.tree</field>
<field name="model">account.payment.import</field>
<field name="arch" type="xml">
<tree string="Payment Imports" decoration-info="payment_id != False" decoration-danger="error_msg != False">
<field name="transaction_date"/>
<field name="facts_id"/>
<field name="paid_in_lei"/>
<field name="paid_in_euro"/>
<field name="amount"/>
<field name="account"/>
<field name="account_no"/>
<field name="document_no"/>
<field name="details_bk_statement"/>
<field name="error_msg"/>
<field name="invoice_number" invisible="1"/>
<field name="payment_id" widget="many2onebutton" invisible="1"/>
<field name="invoice_id" widget="many2onebutton" invisible="1"/>
<field name="company_id" invisible="1"/>
<field name="currency_id" invisible="1"/>
</tree>
</field>
</record>
<record id="account_payment_import_action" model="ir.actions.act_window">
<field name="name">Payment Imports</field>
<field name="res_model">account.payment.import</field>
<field name="view_mode">tree</field> …Run Code Online (Sandbox Code Playgroud) 我有一个创建表单的自定义模块。根据此表格中的答案,我正在生成订单行。用户发送此表单后,我正在使用生成的订单行中的所有产品创建销售订单。
因此,我从 JavaScript 发送了一个包含要购买的产品的 JSON:
order_data = [{product_id: 1, amount: 10, …},{product_id: 2, …}, …];
note = '';
this._rpc({
route: '/api/create_order',
params: { order_products: order_data, note: note }
}).then((data) => {
window.location = '/contactus-thank-you';
}).catch((error) => {
console.error(error);
});
Run Code Online (Sandbox Code Playgroud)
然后在 Python 中,我根据 JSON 创建销售订单:
@http.route('/api/create_order', type='json', auth='user', website=True)
def create_order(self, **kw):
uid = http.request.env.context.get('uid')
partner_id = http.request.env['res.users'].search([('id','=',uid)]).partner_id.id
order_products = kw.get('order_products', [])
note = kw.get('note', '')
order_line = []
for product in order_products:
amount = 0
if 'custom_amount' in product:
amount …Run Code Online (Sandbox Code Playgroud) odoo-13 ×13
odoo ×11
python ×3
python-3.x ×3
button ×1
e-commerce ×1
erp ×1
import ×1
inheritance ×1
javascript ×1
odoo-10 ×1
odoo-11 ×1
odoo-12 ×1
odoo-15 ×1
orm ×1
pos ×1
psycopg2 ×1
recursion ×1
treeview ×1
ubuntu-20.04 ×1
virtualenv ×1