我想以本地化格式输出odoo 8 datetime字段,但没有时间.
我扩展t-field了选项hide_time.有一个更简单的内置解决方案吗?
我在云端的服务器中有两个Odoo实例.如果我执行以下步骤,则会出现"内部服务器错误":
http://111.222.33.44:3333)http://111.222.33.44:4444)如果我想在第二个实例(在另一个端口)中工作,我需要首先删除浏览器cookie以访问其他Odoo实例.如果这样做一切正常.
如果我同时在不同的浏览器(Firefox和Chromium)中加载它们,它们也可以正常工作.
这不是一个NginX问题,因为我尝试使用和不使用它.
有没有办法永久解决这个问题?这是预期的行为吗?
我在Odoo中创建了一个自定义小部件,并将其显示为表单字段.我的模板看起来像这样:
<t t-name="ImageDisplayer">
<img t-att-src="?"/>
</t>
Run Code Online (Sandbox Code Playgroud)
如何将字段的值放入<img>标记的src属性中?
这似乎是一个重要的简单问题,但不知怎的,我无法找到解决方案.
当我按下保存按钮时,将执行write方法.我想在每次调用write方法时更改当前模型的值(或调用函数),所以我重写了我的模型的write()方法
@api.multi
def write(self, vals):
self.flaeche = 37
return super(lager, self).write(vals)
Run Code Online (Sandbox Code Playgroud)
(模型是lager.py和现场flaeche = fields.Float(string=u"Fläche (m²)"))
错误: RuntimeError: maximum recursion depth exceeded
Traceback (most recent call last):
File "/home/tertia/workspace/odoo8/openerp/http.py", line 530, in _handle_exception
return super(JsonRequest, self)._handle_exception(exception)
File "/home/tertia/workspace/odoo8/openerp/http.py", line 567, in dispatch
result = self._call_function(**self.params)
File "/home/tertia/workspace/odoo8/openerp/http.py", line 303, in _call_function
return checked_call(self.db, *args, **kwargs)
File "/home/tertia/workspace/odoo8/openerp/service/model.py", line 113, in wrapper
return f(dbname, *args, **kwargs)
File "/home/tertia/workspace/odoo8/openerp/http.py", line 300, in checked_call
return self.endpoint(*a, **kw)
File "/home/tertia/workspace/odoo8/openerp/http.py", …Run Code Online (Sandbox Code Playgroud) 如何将css文件添加到自定义模块以更改xml视图?我发现这篇文章,但解决方案无效.
我想修改模块中的所有元素,例如表单,列表,输入等.
目前,我正在学习odoo。我想知道ir.ui.view?
这是我的示例代码
<record model="ir.ui.view" id="course_search_view">
<field name="name">course.search</field>
<field name="model">openacademy.course</field>
<field name="arch" type="xml">
<search>
<field name="name"/>
<field name="description"/>
</search>
</field>
</record>
Run Code Online (Sandbox Code Playgroud) 几天前我在这里做了一个类似的问题:如何在Odoo控制器中获取JSON数据?
但现在,我需要创建一个只接收JSON数据的控制器.所以,我正在通过Python控制台执行请求,这样:
import requests
import json
url = 'http://localhost:8069/odoo/test'
headers = {'Content-Type': 'application/json'}
data = {
'name': 'Jane',
'email': 'jane.doe@gmail.com',
}
data_json = json.dumps(data)
r = requests.post(url=url, data=data_json, headers=headers)
Run Code Online (Sandbox Code Playgroud)
我创建了一个监听http:// localhost:8069/odoo/test的控制器,这样:
import openerp.http as http
from openerp.http import Response
import logging
_logger = logging.getLogger(__name__)
class WebFormController(http.Controller):
@http.route('/odoo/test', type='json',
auth='public', methods=['POST'], website=True)
def index(self, **args):
_logger.info('CONNECTION SUCCESSFUL')
_logger.info(args)
name = args.get('name', False)
email = args.get('email', False)
_logger.info(name)
_logger.info(email)
if not name:
Response.status = '400 Bad Request'
return '{"response": …Run Code Online (Sandbox Code Playgroud) 我正在使用nginx作为代理服务器的多处理模式下处理Odoo 8,我读了很多关于这个错误的问题,但我仍然无法解决我的问题,我认为我无法在gevent中运行odoo模式,我已经配置了nginx与longpooling位置,因为很多帖子说,我的配置如下: -
nginx配置: -
upstream odoo8 {
server 127.0.0.1:8069 weight=1 fail_timeout=0;
}
upstream odoo8-im {
server 127.0.0.1:8072 weight=1 fail_timeout=0;
}
server {
listen 80;
server_name 138.201.xx.xx;
access_log /var/log/nginx/odoo.access.log;
error_log /var/log/nginx/odoo.error.log;
location /longpolling {
proxy_pass http://odoo8-im;
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
proxy_redirect off;
# set headers
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_connect_timeout 600;
proxy_send_timeout 600;
proxy_read_timeout 600;
send_timeout 600;
}
location / {
proxy_pass http://odoo8;
proxy_next_upstream error timeout invalid_header http_500 …Run Code Online (Sandbox Code Playgroud) 我试图创建一个模块,门户网站用户可以修改相关的合作伙伴数据.但我收到一个安全错误,只有管理员用户可以修改配置.
文件".../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) 为什么以下代码不适用于odoo 9,但它适用于odoo 8 ......
openerp.petstore = function(instance, local) {
instance.web.form.widgets = instance.web.form.widgets.extend(
{
'test' : 'instance.web.form.message',
});
instance.web.form.message = instance.web.form.FieldChar.extend(
{
template: 'test',
start: function() {
alert('working');
}
});
}
Run Code Online (Sandbox Code Playgroud) odoo-8 ×10
odoo ×6
openerp ×4
xml ×3
python ×2
controller ×1
cookies ×1
css ×1
javascript ×1
json ×1
long-polling ×1
nginx ×1
odoo-9 ×1
odoo-server ×1
odoo-view ×1
openerp-8 ×1
python-2.7 ×1
qweb ×1
report ×1