我创建了一个具有正常设置的模块,该模块显示了表单视图和树视图.默认行为是首先显示表单视图.我需要更改它并将树视图显示为默认视图.
我尝试使用序列属性并使用不同的值更改值,但它没有解决问题
<field name="sequence" >1</field>
Run Code Online (Sandbox Code Playgroud)
另外,我试图更改view_mode属性中的顺序:
<field name="view_mode" >tree,form</field>
Run Code Online (Sandbox Code Playgroud) 如何通过密码限制Odoo / OpenERP对数据库管理器页面的访问?因此,只有主管理员才能看到此页面。
我在这里找到了一个很好的模块:https : //www.odoo.com/forum/help-1/question/how-to-show-the-manage-database-page-for-particular-user-like-administrator-in -openerp-v8-57036#answer-64736
但是问题是这个模块不支持多个数据库!
还有其他方法或自定义模块可以实现吗?
我想在我的模块中加载与讲师id相关的主题ID.我使用api onchange如下.
@api.onchange('lecturer_id')
def _onchange_lecturer(self):
if self.lecturer_id:
sub_id =[]
a = []
lecturer = self.lecturer_id.id
query = """select op_subject_id from lecturer_subject_rel where op_lecturer_id='%s'""" % lecturer
self.env.cr.execute(query)
a = self.env.cr.fetchall()
d = 0
for i in a:
e = i[0]
sub_id.append(e)
d += 1
return [('subject_id', 'in', sub_id)]
else:
return None
Run Code Online (Sandbox Code Playgroud)
和我的领域的域名.
<field name="subject_id" domain=_onchange_lecturer />
Run Code Online (Sandbox Code Playgroud)
正确的主题ID列表传递.如何根据这些id列表加载主题....?
我已经发送了一些来自营销的电子邮件营销活动,在"Mass Mailings"的详细信息我有"电子邮件"按钮.当我点击它时,我有"邮件ID(技术)","邮件ID","已发送"等列.但我看不到我发送的电子邮件.
我怎么能看到这封电子邮件,我认为这是最重要的信息,因为我无法看到哪个客户打开了电子邮件?
我从未使用过odoo,如何从odoo 8升级到odoo 9。
编辑:我找到了这个问题的答案,并张贴了步骤。我将开发一个有效的流程,将其写下来,以及任何困难,如果有人希望发送该消息或发给我,请写下来。
备份数据库
备份服务器文件夹
卸载odoo服务器
安装新版本的odoo,然后停止odoo服务
使用比较工具将更改从“旧插件”文件夹移动到新文件夹。我将比对用于文件和文件夹比较。此步骤可能需要花费更多时间(大约30-40分钟)才能合并自定义的python和报告文件。将旧的现有模块移动到新的addons文件夹中不存在的模块中。
升级数据库。对于linux,使用–update = all参数启动odoo服务器。对于Windows,以管理员身份打开命令提示符(cmd)。转到odoo服务器目录,然后使用odoo-server.exe –update = all启动服务器以更新模块。此过程将花费一小段时间(最多1-2分钟),并且客户端将无法访问该数据库
数据库升级后,您可以开始使用旧模块,并移至新模块,以确保它们可以正常工作。我发现有些地方行不通,报告搞砸了,但是大多数地方都做了简单的修复。最后,启动并运行最新版本。这给了我一个主要的教训,记录您对应用程序所做的所有更改/修复,并在源代码管理中跟踪它们。现在,接下来,我将设置我的旧本地svn服务器,以跟踪对odoo所做的更改以及还将与后续发行版合并的更改。
有时必须重新计算存储的字段,但无法启动触发器(例如,在SQL注入的情况下).
如何轻松地重新计算它们?
我和Odoo一起工作(第9节).我有自定义:表单(用于模型1),操作和弹出窗体(用于模型2).这里的示例主要形式:
<record id="my_id_form" model="ir.ui.view">
<field name="name">my_name_form</field>
<field name="model">my_model_one</field>
<field name="arch" type="xml">
<form string="Name">
<sheet>
<group>
<field name="partner_id"/>
<!-- button which open popup with my_model_two -->
<button string="Open popup"
name="%(my_module.action_open_popup)d"
type="action"
class="btn-link"/>
</group>
</sheet>
</form>
</field>
</record>
Run Code Online (Sandbox Code Playgroud)
按钮的窗口操作打开弹出窗口:
<record id="action_open_popup" model="ir.actions.act_window">
<field name="name">action name</field>
<field name="res_model">my_model_two</field>
<field name="view_id" ref="model_two_form_popup"/>
<!--
How I can send partner_id from main form to popup?
I tried different ways in context field, but all in vain
<field name="context">{'default_partner_id': ?????,}</field>
-->
<field name="target">new</field>
</record>
Run Code Online (Sandbox Code Playgroud)
示例 …
我想要改变字段obj_global的总和,但我不能这样做
我覆盖了函数read_group但是我没有正确的总和我希望总和= group by sum_id:130000 = 10000 + 70000 + 50000认为我们的帮助
def read_group(self, cr, uid, domain, fields, groupby, offset=0, limit=None, context=None, orderby=False, lazy=True):
res = super(obj_report_line, self).read_group(cr, uid, domain, fields, groupby, offset, limit=limit, context=context, orderby=orderby, lazy=lazy)
if 'obj_report_line' in fields :
for line in res:
if '__domain' in line:
lines = self.search(cr, uid, line['__domain'], context=context)
pending_value = 0.0
for current_account in self.browse(cr, uid, lines, context=context):
if 'section_id' in groupby and 'date' not in groupby:
pending_value = current_account.obj_global
else:
pending_value = …Run Code Online (Sandbox Code Playgroud) 我得到了一个数据库备份(带有文件存储),filestore文件夹和另一个包含该数据库上已安装模块的文件夹.
我希望在没有更多数据的情况下在Odoo 8中恢复该备份.所以我所做的是创建拥有数据库表并赋予其足够权限(登录,创建,复制)的PostgreSQL角色.然后我创建了一个Odoo配置文件.在这里,我设置了这个新的PostgreSQL角色db_user和密码db_password.我添加了存储文件存储data_dir的路径,以及包含所有模块的文件夹的路径addons_path.
由于没有给出启动器文件,我复制了其他Odoo实例的OCB文件夹,并使用其odoo.py文件启动Odoo.
新实例似乎运行良好,但现在我刚刚恢复了数据库,我收到此错误:
QWebException: "'HttpRequest' object has no attribute 'endpoint_arguments'" while evaluating
'website.get_alternate_languages(request.httprequest)'
Run Code Online (Sandbox Code Playgroud)
我在google搜索了很多,但除了在其他论坛中没有回答的问题外,我无法找到任何关于它的信息.
有谁知道这是关于什么的?
目前我正在使用odoov8,我的问题是我已经根据我的要求从xml代码创建了许多过滤器,并且一切正常,但我一次只能选择一个过滤器.
所以例如我想在树视图中应用任何3个过滤器,然后我需要选择第一个,然后系统加载数据,然后我选择第二个然后第三个过滤器,因此系统在应用每个过滤器后加载.
我希望实现这一点,如果我可以一次选择所有我的过滤器然后我可以应用搜索,所以系统加载申请搜索后,无论花多少时间,但我不应该要求搜索单个过滤器.
所以有任何自定义模块或方式,我可以从中实现这一点.
提前致谢 .
odoo-8 ×10
openerp ×6
odoo ×4
python ×3
python-2.7 ×2
xml ×2
javascript ×1
odoo-9 ×1
onchange ×1
openerp-8 ×1
pg-restore ×1
putty ×1
sum ×1
upgrade ×1
xml-rpc ×1