我在dir"/ opt/odoo /"上有一个带有odoo的容器.
"/etc/init.d/odoo-server"上的init脚本
#!/bin/bash
### BEGIN INIT INFO
# Provides: odoo
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start openerp daemon at boot time
# Description: Enable service provided by daemon.
# X-Interactive: true
### END INIT INFO
## more info: http://wiki.debian.org/LSBInitScripts
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin
DAEMON=/opt/odoo/openerp-server
NAME=odoo
DESC=odoo
CONFIG=/etc/odoo-server.conf
LOGFILE=/var/log/odoo/odoo-server.log
PIDFILE=/var/run/${NAME}.pid
USER=odoo
export LOGNAME=$USER
test -x $DAEMON || exit 0
set -e
function _start() { …Run Code Online (Sandbox Code Playgroud) 我已经尝试没有成功按顺序排序jquery的记录字典我不知道在哪里再次按名称排序.
我问社区git但没有人回答我,我试图按照odoo序列排序.使用模块web_widget_x2many_2d_matrix和sale_order_variant_mgmt
我修改python代码,如果我调试记录列表排序是预期的,但是当加载javascript代码时,它按名称排序并且无法调试问题所在的位置
@api.onchange('product_tmpl_id')
def _onchange_product_tmpl_id(self):
self.variant_line_ids = [(6, 0, [])]
template = self.product_tmpl_id
context = self.env.context
record = self.env[context['active_model']].browse(context['active_id'])
if context['active_model'] == 'sale.order.line' or context['active_model'] == 'sale.order.line_group': #TODO check this modify for lentex group_sale_lines module
sale_order = record.order_id
else:
sale_order = record
num_attrs = len(template.attribute_line_ids)
if not template or not num_attrs:
return
line_x = template.attribute_line_ids[0]
line_y = False if num_attrs == 1 else template.attribute_line_ids[1]
lines = []
for value_x in line_x.value_ids.sorted(key=lambda r: r.sequence):
for value_y in line_y and …Run Code Online (Sandbox Code Playgroud) 我正在使用谷歌云实例主机Odoo,somo报告打印到pdf确定,但其他自定义paperformat得到以下错误:
"切换--header-spacing,不支持使用未修补的qt,将被忽略.开关--header-html,不支持使用未修补的qt,将被忽略.切换--footer-html,是不支持使用未修补的qt,并将被忽略.QXcbConnection:无法连接显示"
我谷歌它,并解决我需要编译wkhtmltopdf像这样:http://www.grobak.net/id/blog/how-fix-wkhtmltopdf-failed-error-code-6但这个过程需要3 小时 和我正在构建一个脚本,以便在运行时使用odoo依赖项安装google实例.
.deb包的依赖性已被破坏
谁知道其他解决方案?
我试图创建一个模块,门户网站用户可以修改相关的合作伙伴数据.但我收到一个安全错误,只有管理员用户可以修改配置.
文件".../server/openerp/addons/base/res/res_config.py",第541行,执行提升openerp.exceptions.AccessError(_("只有管理员可以更改设置"))
我尝试过这样的安全访问:
access_config_portal,portal_partner_config.settings,model_portal_partner_config_settings,base.group_portal,1,1,0,0
但是没有用......我认为这是因为错误显示在res_config.py执行函数时它会检查用户是否为SUPERUSER:
if uid != SUPERUSER_ID and not self.pool['res.users'].has_group(cr, uid, 'base.group_erp_manager'):
raise openerp.exceptions.AccessError(_("Only administrators can change the settings"))
Run Code Online (Sandbox Code Playgroud)
像这样:
class Configuration(models.TransientModel):
_inherit = 'res.config.settings'
_name = 'portal_partner_config.settings'
name = fields.Char()
street = fields.Char()
city = fields.Char()
@api.model
def get_default_inova_values(self,fields):
users = self.pool.get('res.users')
current_user = users.browse(self._cr, self._uid, self._uid, context=self._context)
name = current_user.partner_id.name
street = current_user.partner_id.street
city = current_user.partner_id.city
return {
'name': name,
'street': street,
'city': city,}
@api.one
def set_inova_values(self):
users = self.pool.get('res.users')
current_user = users.browse(self._cr, self._uid, self._uid, context=self._context) …Run Code Online (Sandbox Code Playgroud) 我迈出了第一步.我正在尝试像这样扩展产品模型类.
from openerp.osv import osv,fields as fields
class product_product(osv.osv):
_name = 'product.product'
_inherit = 'product.product'
_columns = {
'products_ids':fields.one2many('product_application.version', 'version_id', string="Versions")
}
Run Code Online (Sandbox Code Playgroud)
并得到以下错误
File "/home/nano/ARCHIVOS/PycharmProjects/odoo/odoo/openerp/models.py", line 596, in _build_model
original_module = pool[name]._original_module if name in parents else cls._module
File "/home/nano/ARCHIVOS/PycharmProjects/odoo/odoo/openerp/modules/registry.py", line 102, in __getitem__
return self.models[model_name]
KeyError: 'product.product'
Run Code Online (Sandbox Code Playgroud)
任何人都可以给我一个完整的odoo v8文档,官方很差
我正在尝试从网站上获取文件的下载和文件名.
模型
class Files(models.Model):
_name = 'website_downloads.files'
name = fields.Char()
file = fields.Binary('File')
Run Code Online (Sandbox Code Playgroud)
CONTROLER
class website_downloads(http.Controller):
@http.route('/downloads/', auth='public', website=True)
def index(self, **kw):
files = http.request.env['website_downloads.files']
return http.request.render('website_downloads.index', {
'files': files.search([]),
})
Run Code Online (Sandbox Code Playgroud)
模板
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<template id="index" name="Website Downloads Index">
<t t-call="website.layout">
<div id="wrap" style="margin-top:50px;margin-bottom:50px">
<div class="container text-center">
<table class="table table-striped">
<t t-foreach="files" t-as="f">
<tr>
<td><t t-esc="f.name"/></td>
**<td>Download</td>**
</tr>
</t>
</table>
</div>
</div>
</t>
</template>
</data>
</openerp>
Run Code Online (Sandbox Code Playgroud)
如何获取下载链接,以及将文件保存在db save de original filename中
我正在尝试使用与Django相同的功能:
<div class="item {% if condition == True %}active{% endif %}">
Run Code Online (Sandbox Code Playgroud)
在Odoo我有:
<t t-foreach="list" t-as="l">
<a t-attf-href="/downloads/{{l.id}}" class="list-group-item"><t t-esc="l.name"/></a>
</t>
Run Code Online (Sandbox Code Playgroud)
如果"c.id = cat_id",我需要附加类"active"
怎么在Odoo完成?
我正在使用:
<t t-foreach="categories" t-as="c">
<t t-if="c.id == category_id">
<a t-attf-href="/downloads/{{c.id}}" class="list-group-item active"><t t-esc="c.name"/></a>
</t>
<t t-if="c.id != category_id">
<a t-attf-href="/downloads/{{c.id}}" class="list-group-item"><t t-esc="c.name"/></a>
</t>
</t>
Run Code Online (Sandbox Code Playgroud)
但寻找更加蟒蛇的方式
如何从容器内获取docker的容器名称?
我不能使用inspect因为我必须使用容器内部的脚本来从JSON url获取信息.
当我添加到我的模板时,我收到以下错误
QWebException: "'NoneType' object has no attribute 'name'" while evaluating
'res_company.name'
Run Code Online (Sandbox Code Playgroud)
模板代码:
<template id="index" >
<t t-call="website.layout">
<t t-set="title">Academy</t>
<div class="oe_structure">
<div class="container">
<ul><t t-foreach="brands" t-as="b">
<li><a t-attf-href="/pa/{{b.id}}">
<t t-esc="b.name"/>
</a></li>
</t></ul>
</div>
</div>
</t>
</template>
Run Code Online (Sandbox Code Playgroud) 我有一个字段,我想计算它的更改价值,但我不希望用户修改它。
如果我将字段设置为readonly = 1或editable = 0,则不会存储该值。
我正在尝试为发票设置全局折扣
class account_invoice(models.Model):
_inherit = "account.invoice"
global_discount_p = fields.Float('Descuento porcentaje')
global_discount = fields.Float('Descuento')
neto = fields.Float('Neto')
@api.one
@api.depends('invoice_line.price_subtotal', 'tax_line.amount','global_discount_p')
def _compute_amount(self):
ret = super(account_invoice,self)._compute_amount()
if self.type == 'in_invoice':
self.neto = self.amount_untaxed
discount = self.global_discount_p/100
self.global_discount = self.neto * discount
self.amount_untaxed = self.neto - self.global_discount
for line in self.tax_line:
line.base = self.amount_untaxed
line.amount = line.amount - (line.amount * discount)
self.amount_tax = sum(line.amount for line in self.tax_line)
self.amount_total = self.amount_untaxed + self.amount_tax
return ret
Run Code Online (Sandbox Code Playgroud)
并在布局中:
<xpath …Run Code Online (Sandbox Code Playgroud) 我想在odoo中存储配置数据,我需要存储3个'account.journal'的引用.模型在数据库中创建,视图显示在配置基础菜单中,当我按下APPLY按钮时数据存储在数据库中但是当我重新加载菜单时数据未显示
代码使用:
from openerp import fields, models, osv, api, _
class Configuration(models.TransientModel):
_inherit = 'res.config.settings'
_name = 'transporte_carta_de_porte.config.settings'
ft_mercaderia = fields.Many2one(
'account.journal',string='Debito ft mercaderia',
help="Diario de ajuste al transportista por faltante de mercaderia")
ade_transportista = fields.Many2one(
'account.journal',string='Debito por adelanto transportista',
help="Diario de debito al transportista por faltante de adelanto")
ade_proveedor = fields.Many2one(
'account.journal',string='Debito por adelanto proveedor',
help="Diario de debito por adelanto en la cuenta del proveedor de combustible",)
Run Code Online (Sandbox Code Playgroud)
布局
<record id="view_tcp_config_settings" model="ir.ui.view">
<field name="name">TCP settings</field>
<field name="model">transporte_carta_de_porte.config.settings</field>
<field name="arch" type="xml"> …Run Code Online (Sandbox Code Playgroud) Odoo 版本:9 社区
我为"#o_shop_collapse_category li a"定义了样式,但它不是最后加载的,加载的样式是"/website_sale/static/src/css/website_sale.css" 中定义的样式。
当我定义我的模块时,它取决于 website_sale,所以....我的模块最后安装,css 文件是用last()定义的,所以我的样式应该最后在website.assets_frontend.0.css 中定义
我的风格如下:
#o_shop_collapse_category li a{
border: 1px solid #ccc;
padding: 6px 4px 6px 20px;
margin-bottom: 5px;
}
Run Code Online (Sandbox Code Playgroud)
它是这样的负载
<template id="celuphone_style" name="Celuphone style" inherit_id="website.assets_frontend">
<xpath expr="link[last()]" position="after">
<link rel="stylesheet" href="/client_CELUPHONE/static/less/style.less" type="text/less"/>
</xpath>
</template>
Run Code Online (Sandbox Code Playgroud)
问题是当时Odoo如何定义模块优先级以编译更少的文件
谢谢!