小编for*_*vas的帖子

在Windows上运行Python脚本导入xmlrpclib?

我一直在使用Linux来编写Python脚本,但现在我必须使其中一个在Windows XP上运行,而且我在这里是一个初学者.我在C:\ Python34中安装了Python 3.4,我在E:\ solidworks_xmlrpc中安装了我的Python脚本.此脚本在Linux上运行良好,但在Windows上我收到此错误消息:

import xmlrpclib
ImportError: No module named "xmlrpclib"
Run Code Online (Sandbox Code Playgroud)

我检查了C:\ Python34\Lib中是否有一个xmlrpc文件夹.我还在系统变量中定义了PYTHONPATH和PYTHONHOME.

有人知道怎么解决这个问题吗?

非常感谢.

编辑

我删除了程序的内容只需要一点时间来证明:

import sys
print(sys.path)
Run Code Online (Sandbox Code Playgroud)

并且cmd返回了这个:

['E:\\solidworks_xmlrpc', 'C:\\WINDOWS\\system32\\python34.zip', 'C:\\Python34\\
DLLs', 'C:\\Python34\\lib', 'C:\\Python34', 'C:\\Python34\\lib\\site-packages']
Run Code Online (Sandbox Code Playgroud)

python windows xmlrpclib python-3.x

2
推荐指数
1
解决办法
2974
查看次数

有没有办法用psycopg2询问用户密码?

psycopg2中是否有一个选项(在connect()方法中)类似于psql -w(从不发出密码提示)和-W(强制psql在连接到数据库之前提示输入密码)?

python postgresql psycopg2

2
推荐指数
1
解决办法
712
查看次数

如何在Ubuntu 12.04中安装Python3的库netifaces?

我在Python3中创建了一个使用包netifaces的程序,我用pip3在两台装有Ubuntu 13.04和Ubuntu 13.10的计算机上安装了它.但是,我需要在其他具有Ubuntu 12.04的计算机上安装它,在这里我无法安装pip3(python3-pip),因为它不在存储库中.

我做的是接下来的步骤:

sudo aptitude install python3-setuptools
sudo easy_install3 pip
Run Code Online (Sandbox Code Playgroud)

然后我有pip3可用.问题是当我尝试用pip3 安装netifaces时,这给了我下一个错误:

error: command 'gcc' failed with exit status 1
Command /usr/bin/python3 -c "import setuptools, tokenize;__file__='/tmp/pip_build_root/netifaces/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-gkaftl-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /tmp/pip_build_root/netifaces
Storing debug log for failure in /home/anubia/.pip/pip.log
Run Code Online (Sandbox Code Playgroud)

如果我用pip或aptitude或apt-get 安装netifaces,程序无法识别库,因为它的文件安装在python2文件夹中.我甚至试图从python3文件夹到它们做一个符号链接,但它没有用.

请问有什么想法吗?

python ubuntu pip python-3.x

2
推荐指数
1
解决办法
2万
查看次数

如何为多对多关系(OpenERP7)添加和显示一些属性?

这是一个棘手的问题。

我试图将一些字段添加到many2many表中。我在谷歌上搜索,发现必须创建一个中间表来存储这些字段。但这不是很好。

我的示例:我创建了一个表(training_course)。一个伙伴可以加入许多training_course,而一个training_course由许多伙伴组成(因此,这是一个多对多关系)。我必须存储合作伙伴加入课程的日期。

因此,在合作伙伴表格中,我必须查看他加入的课程列表,以及每个人的日期。

我的代码是:

res_partner_course_rel(这是由我生成的中间类,名称为'res.partner.course.rel'-

 _columns = {
        'partner_id': fields.many2one('res.partner', 'Partner', ondelete='cascade'),
        'course_id': fields.many2one('training.course', 'Course', ondelete='cascade'),
        'date': fields.date('Joining date'),
    }
Run Code Online (Sandbox Code Playgroud)

res_partner

 _columns = {
        'courses': fields.many2many('res.partner.course.rel', id1='partner_id', id2='partner_course_rel_id', string='Courses'),
    }
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是:

  • 在伙伴表单中,当我单击结果列表中的添加新记录时,我必须选择伙伴(这是无意义的,因为它必须是当前的伙伴)。
  • 当我想显示两个列(课程日期)时,结果列表仅显示一列(伙伴)。

有人可以帮我一下吗?我正在尝试几种方法,但是我无法满足需要。

python many-to-many openerp openerp-7

2
推荐指数
1
解决办法
2351
查看次数

如何通过XML文件在Odoo数据库中引入Many2one字段值?

我正在使用Odoo 8,我正在尝试通过XML文件在数据库中引入数据.

这个文件的内容是下一个:

<?xml version="1.0" encoding="utf-8"?>
<openerp>
    <data noupdate="1">
        <record id="event_invitation_email_template" model="email.template">
            <field name="name">Event Invitation</field>
            <field name="subject">Invitation to an event</field>
            <field name="email_from">${(object.event_id.user_id.email or &apos;noreply@localhost&apos;)|safe}</field>
            <field name="email_to">${object.email|safe}</field>
        </record>
    </data>
</openerp>
Run Code Online (Sandbox Code Playgroud)

这非常有效.但我想添加另一个字段model_id,这是一个Many2one(指向ir.model).如果我想要设置的值具有XML ID,我会知道如何执行此操作,但实际情况并非如此.

我想将模型my.new.model设置为model_id,但如果我不进行搜索,我不知道它在数据库中的ID.

所以我不知道如何管理我的目的.有人可以帮帮我吗?

xml many-to-one odoo odoo-8

2
推荐指数
1
解决办法
2181
查看次数

为什么在Odoo v11中删除了工作流程?

当我在Odoo 10中使用它时,我有一个非常好用的模块.但是,在Odoo 11中,工作流程的一部分不起作用.

我是新用的Odoo 11,我无法找到有关工作流程的信息.Odoo 10和Odoo 11之间的工作流程有何不同?我认为我必须更改.xml文件.

提前致谢.

python xml python-2.7 odoo odoo-11

2
推荐指数
1
解决办法
3033
查看次数

如何在One2many / Many2many字段中获取非活动记录?

让我们用一个简单的One2many举个例子:假设一个人可以养几个宠物,但是一个宠物只能拥有一个主人:

class Pet(models.Model):
    _name='pet'

    owner_id = fields.Many2one(
        comodel_name='person',
        string='Owner',
    )
    active = fields.Boolean(
        string='Active',
        default=True,
    )

class Person(models.Model):
    _name='person'

    pet_ids = fields.One2many(
        comodel_name='pet',
        inverse_name='owner_id',
        string='Pets',
    )
Run Code Online (Sandbox Code Playgroud)

现在,您有一个人(Id:1)拥有两个宠物(Id:56,57),但是其中一个宠物是不活跃的(Id:57的宠物)。如果打印person.pet_ids,Odoo将返回pet(56,)。不活动的记录不包括在那里。打印时有什么办法显示它们person.pets_ids吗?

到目前为止,我做到了:

pets = self.env['pet'].search([
    ('owner_id', '=', person.id),
    '|',
    ('active', '=', True),
    ('active', '=', False),
])
Run Code Online (Sandbox Code Playgroud)

但是我想知道是否有更好的方法。

python python-2.7 odoo odoo-8

2
推荐指数
1
解决办法
547
查看次数

这些瞬态模型的ID发生了什么?

代码

我有以下瞬态模型:

class MoveLotsManager(models.TransientModel):
    _name = 'move.lots.manager'

    product_lots_available = fields.One2many(
        comodel_name='move.product.lot.available',
        inverse_name='manager_id',
        string='Available lots',
    )

class MoveProductLotAvailable(models.TransientModel):
    _name = 'move.product.lot.available'

    manager_id = fields.Many2one(
        comodel_name='move.lots.manager',
        string='Lots Manager',
    )
    name = fields.Char(
        string='Name',
    )

    @api.one
    @api.onchange('name')
    def onchange_name(self):
        # LOGGER 4
        _logger.info(self.manager_id)
        # LOGGER 5
        _logger.info(self.manager_id.id)
Run Code Online (Sandbox Code Playgroud)

如您所见,它们都是通过1:N关系连接的。我以这种方式打开瞬态模型的视图:

@api.multi
def open_move_lots_manager_wizard(self):
    self.ensure_one()
    wizard_id = self.env.ref(
        'my_module.view_move_lots_manager_wizard').id
    default_lots = [(
        (0, 0, {
            'name': 'My lot',
        })
    )]
    lots_manager = self.env['move.lots.manager'].create({
        'product_lots_available': default_lots,
    })
    # LOGGER 1
    _logger.info(lots_manager)
    # LOGGER 2
    _logger.info(lots_manager.id)
    # LOGGER …
Run Code Online (Sandbox Code Playgroud)

python python-2.7 odoo odoo-8

2
推荐指数
1
解决办法
445
查看次数

Odoo:重用选项卡中另一个模型的树视图

我试图在 res.partner 的 formview 笔记本中放入一个新选项卡,其中包含一个带有相关对象列表的树视图(我实现的“调度”模型,其中有一个指向 res.partner 的 Many2one)。

我找不到办法做到这一点,谷歌搜索并没有多大帮助。如何将此树视图指向模型的现有树视图?以及如何指定域以便只显示正确的数据?]

res.partner 表单的当前代码是

<odoo>
    <data>
        <record model="ir.ui.view" id="partner_form">
            <field name="name">res.partner.form</field>
            <field name="model">res.partner</field>
            <field name="inherit_id" ref="base.view_partner_form"/>
            <field name="arch" type="xml">
                <xpath expr="//notebook/page[3]" position="attributes">
                    <attribute name="invisible">1</attribute>
                </xpath>
                <xpath expr="//notebook/page[3]" position="after">
                    <page string='Consultas'>
                    </page>
                </xpath>
            </field>
        </record>
    </data>
</odoo>
Run Code Online (Sandbox Code Playgroud)

python xml odoo

2
推荐指数
1
解决办法
742
查看次数

如何在表单视图中用单个标签在一行上显示两个字段?

我有两个字段product_qtyand product_uom,我需要product_qty在同一行上显示和 两个字段的标签。

我在 Odoo 论坛上找到了相同问题的答案,但它并不是我想要的。

<group>
    <label for="product_qty"/>
    <div class="address_format">
        <field name="product_qty"/>
        <field name="product_uom"/>
    </div>
</group>
Run Code Online (Sandbox Code Playgroud)

是否可以将它们内联在同一行上?

xml odoo odoo-view

2
推荐指数
1
解决办法
3178
查看次数