跳转至内容
  • 版块
  • 标签
  • 热门
  • 用户
  • 群组
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(Flatly)
  • 不使用皮肤
折叠

Odoo 中文社区

E

eric2017

@eric2017
关于
帖子
27
主题
11
群组
0
粉丝
0
关注
1

帖子

最新 最佳 有争议的

  • 卸载模块后如何恢复数据?
    E eric2017

    有客户意外卸载了模块,有没有办法将数据恢复?


  • [已解决]odoo如何在离开页面时触发事件?
    E eric2017

    @leuan 在 odoo10,如何在离开页面时触发事件? 中说:

    @eric2017 试一下在页面销毁的时候的 触发事件就好了

    谢谢!改成window.onunload后果然就可以了。真是出乎意料


  • [已解决]odoo如何在离开页面时触发事件?
    E eric2017

    目前通过window.onbeforeunload能实现关闭浏览器时触发事件,但是无法在离开单据时触发事件,例如从单据到列表,就无法通过window.onbeforeunload触发相应的事件。


  • controllers中的auth=“user”对应的方法,如何使用?
    E eric2017

    例如:

    from odoo import http
    
    class Books(http.Controller):
    
        @http.route('/library/books', auth='user')
        def list(self, **kwargs):
            Book = http.request.env['library.book']
            books = Book.search([])
            return http.request.render(
                'library_app.book_list_template', {'books':books})
    

    如果auth='public',那么,可以在postman中,通过:http://localhost:8069/library/books来访问这个方法;
    但是,auth='user'时,得到的结果是登陆页面的代码。
    那么,如何操作,才能像auth='public'那样访问这个方法?


  • [已解决]安装nginx后,在odoo中注销时,url上的端口号自动丢失
    E eric2017

    非常感谢!
    在您的指导下,已顺利解决该问题


  • [已解决]安装nginx后,在odoo中注销时,url上的端口号自动丢失
    E eric2017

    nginx将8069端口转发给odoo的8091、8095端口。
    使用8069端口,能正常操作,除了在注销后。
    此时,端口号被自动去掉。只有手动输入
    http://localhost:8069/web/login
    才会正常。去掉login,或者去掉web/login都会自动删除端口号。

    这个问题,如何解决?

    系统:Ubuntu16.04
    odoo版本:10.0

    odoo的设置为:

    xmlrpc_port = 8091
    longpolling_port = 8095
    

    nginx的default中的80全部改为81,并去掉default_server

    server {
    	listen 81;
    	listen [::]:81;
    

    新添加设置odoo,内容为:

    server{
                listen 8069 default_server;
                #listen [::]:8069 default_server;
                server_name  odoo10;
                location / {
                            proxy_pass http://0.0.0.0:8091;
                            proxy_redirect    off;
                            proxy_set_header Host $host;
                            proxy_set_header X-Real-IP  $remote_addr;
                            proxy_set_header X-Forwarded-For  $proxy_add_x_forwarded_for;
                }
                location /longpolling/ {
                            proxy_pass        http://localhost:8095/longpolling/;
                            proxy_redirect    off;
                            proxy_set_header Host $host;
                            proxy_set_header X-Real-IP $remote_addr;
                            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                }
    
    }
    

  • odoo10中怎样控制向导的关闭??
    E eric2017

    在向导中,点任何按钮都会关闭向导。
    使它看起来像没有关闭的方法是:在按钮的最后,重新打开该向导

    至于有没有保持不关闭的方法,我不知道。


  • [已解决]odoo10外网登录后,打印格式错误
    E eric2017

    @hui 在odoo的根目录下,有个doc文件夹。在该文件夹下,全文搜索web.base.url,就能找到。
    至于全部系统参数,我就不知道哪里有这样的列表了🤔


  • [已解决]odoo10外网登录后,打印格式错误
    E eric2017

    @Siyuan 非常感谢!!!

    系统参数里有web.base.url配置,没有report.url配置。
    我看了它的文档,web.base.url参数会随着Administrator用户的登录而改变。按照文档的说明,将report.url配置为 http://localhost:8069后,就没有该问题了。


  • [已解决]odoo10外网登录后,打印格式错误
    E eric2017

    现象:
    1.只要从外网登录,打印格式就没了(无样式,内容没问题);只要从内网登录,打印格式就好了。
    目前只有登录操作会产生影响,暂时没有发现其他操作会产生影响。

    2.出现问题时,将url改成html的格式,显示出的样式是没有问题的

    3.用的是山东移动的网络。我把电脑拿到外地,就不会出现这样的问题。

    这里只有移动的网络,有没有不换网络的解决办法?


  • [已解决]如何为控件添加事件?(odoo10)
    E eric2017

    采用变通方法解决,方法如下:
    1.直接写html,放到static下的description中。
    在html中,写几个控件,记录读取出来的值

    注意,文件名不要使用index.html

    2.在页面中,使用iframe,将写好的html嵌入到页面里面。

    如果不需要显示,可将iframe隐藏。
    iframe的使用方法,参见这篇文章《odoo通过iframe插入html页面》

    3.html中读出数据后,点击按钮,将html中记录的值,添加到相应的字段中

    按钮参见文章《odoo10在顶部“创建”按钮附加增加自定义按钮》
    注意,文章中给按钮添加事件的方法,可能是老式的写法。新方法参见form_view.js里的写法
    获取iframe中的控件的值的方法,参见文章《iframe操作ie,firefox兼容》

    大家有什么更好的方法,请不吝赐教


  • [已解决]odoo10 继承并扩展底层模块问题
    E eric2017

    这是有办法解决的,方法如下:
    1.在应用中,打开扩展模块。就是能看到升级/卸载的地方
    2.将代码更新到最新
    3.重启odoo服务
    4.点升级。特别注意,第一件事是,必须点升级,千万别干别的。
    如果已经干了别的,可先注销对应的xml中,所有用到添加字段的地方,或者干脆注销整个文件。

    如果是本地开发,可先添加字段,重启odoo后升级,再添加xml文件。


  • [已解决]如何为控件添加事件?(odoo10)
    E eric2017

    我要调用activex控件。现在已能通过odoo,从activex控件中读取数据,但是需要通过添加事件来读取数据。
    非odoo中,示例如下:

    <script for=idcard event="Readed()">
          getinfo_onclick();
    </script>
    

    在odoo中,这样的事件如何写呢?

    因为要调用activex控件,因此,使用IE11浏览器。
    在IE11中,已经不支持addEvent/attachEvent


  • odoo如何查询多个表
    E eric2017

    在odoo10中,如何查询多个表?
    例如:表A,表B两个表。B是A的明细,A中的字段:
    a1=fields.Many2one(....)
    a2=...
    a2b=fields.One2many(B的_name,'a_id')
    B中的字段:
    a_id=fields.Many2one(A的_name)
    b1=fields.Many2one(....)
    b2=...
    b3=...
    要以a1与b1为条件查询a2、b2与b3,如何写?


  • onchange时字段只读不保存的问题
    E eric2017

    @digitalsatori function字段是什么?如果方便,给个例子或网址,谢谢!


  • 下拉框搜索时,如果用首拼过滤?[已解决]
    E eric2017

    @1234567 假设档案类类名为A,名称字段为name,首拼字段为spell。算法如下:
    1.写设置首拼的代码
    获取汉字首拼的代码,参见:http://www.jb51.net/article/68715.htm
    将里面的方法,写到utils.py文件中,然后添加方法:

    def set_spell(values):
        if values.has_key('name'):
            values['spell'] = multi_get_letter(values['name'])
    

    2.在A中,重写write、create方法,并添加计算首拼的代码。例如:

        @api.model
        def create(self, values):
            utils.set_spell(values)
            return super(A, self).create(values)
    

    3.为在其他地方使用该档案A的下拉框,添加对搜索的支持。在A中继续添加代码:

        @api.model
        def name_search(self, name='', args=None, operator='ilike', limit=100):
            args = args or []
            domain = ['|', ('spell', operator, name), ('name', operator, name)]
            recs = self.search(domain + args, limit=limit)
            return recs.name_get()
    

  • 下拉框搜索时,如果用首拼过滤?[已解决]
    E eric2017

    @digitalsatori 非常感谢,已按您的指点完美实现该功能。我之所以添加一个字段来存储首拼,是为了提高查询效率。
    我目前还不会写基类,等我学会了,就不存在自动化的问题,直接继承即可
    关于继承,有2个问题:
    1.跨模块调用。
    2.如何在xml配置页面时,方便使用
    不过,这些问题在当前都还不重要,先学别的东西


  • 下拉框搜索时,如果用首拼过滤?[已解决]
    E eric2017

    在档案中添加了首拼字段,用于保存name的首拼。
    在tree视图中,已经可以通过首拼过滤查询结果;那么,如何在对应的下拉框中实现首拼过滤的功能呢?


  • odoo如何处理“空”?
    E eric2017

    @袭流苏2amor
    这是2个问题。问题2非常感谢 @1234567 ,已经回答的很清楚了;下面说问题1:
    数字为空的功能,是用在明细中。当添加明细时,所有数字字段为空,方便输入。而实际中,显示为0(或小数,例如0.00),第一次点击时,会全部选中,可是,从第二个字段起,就需要手动全选删除,再输入数字。这很显然不是一个方便人使用的设计。

    赋值为空的方法,可能没有效果:我给字段的default赋值为None,添加明细时,仍然显示为0。不知道是不是我的方法有问题?

    另:
    感谢 @cherrychan ,我添加了char类型的字段,用于在页面上显示,实际使用时,取对于的数字字段。它有2个问题:
    1.对于需要保留小数位数的字段,需要额外处理
    2.每个数字字段,都需要添加对于的char类型字段,这涉及到大量的修改,即便全部修改完成,也会增加复杂性,不利于理解和以后的维护。
    我觉得,这个处理办法,只能在不得已的情况下采用了。


  • odoo如何处理“空”?
    E eric2017

    1.字段是否支持空值?
    例如:数字字段,为空,比为0方便。为0时,在输入数字时,需要先选中0,操作麻烦
    2.下拉框控件是否支持选空值?
    除了Selection,没发现别的下拉框可以选空。在实际使用时,有些是允许为空的,如果不小心选择并保存了,就没有办法清空了。

  • 登录

  • 没有帐号? 注册

  • 登录或注册以进行搜索。
  • 第一个帖子
    最后一个帖子
0
  • 版块
  • 标签
  • 热门
  • 用户
  • 群组