你好,
我正在通过一本名为Odoo Development Essentials的书籍潜入Odoo。 我正在尝试创建一个待办事项模块。 到现在为止,我设法创建了模块并将其安装在管理员中。
在模块中,有:
OpenERP的的.py
{
'name': "Todo App",
'description': "Long description of module's purpose",
'author': "TSA",
'depends': ['mail'],
'application':True,
'data': ['todo_view.xml'],
}
todo_model.py
from openerp import models, fields
class TodoTask(models.Model):
_name = 'todo.task'
name= fields.Char('Description',required=True)
is_done = fields.Boolean('Done?')
active = fields.Boolean('Active?',default=True)
初始化的.py
from . import todo_model
todo_view.xml
<openerp>
<data>
<!-- Action to open todo task list -->
<act_window id="action_todo_task" name="Todo Task" res_model = "todo.task" view_mode="three,form"/>
<!-- Menu item to open Todo task list -->
<menuitem id="menu_todo_task" name="Todo Tasks" parent="mail.mail_feeds" sequence="20" action="action_todo_task"/>
</data>
书中说,使用父邮件mail.mail_feeds的menuitem用于在Messaging菜单下添加菜单项。实际上它确实如此,但当我尝试点击菜单时,我有一个像这样的错误:
我搜索了谷歌的提示,但没有找到... 有人能帮助我吗?
谢谢你, 托马斯
答案 0 :(得分:4)
替换
parent="mail.mail_feeds"
与
parent="mail.mail_channel_menu_root_chat"
答案 1 :(得分:0)
您可以通过在 ir.ui.menu 中插入记录来实现此目的。您可以在Odoo8的addons / mail / mail_thread_view.xml中看到类似的示例。
<record id="mail_inboxfeeds" model="ir.ui.menu">
<field name="name">Inbox</field>
<field name="sequence" eval="10"/>
<field name="action" ref="action_mail_inbox_feeds"/>
<field name="parent_id" ref="mail.mail_feeds"/>
</record>
您还可以在同一文件中获取 action_mail_inbox_feeds 操作定义。
答案 2 :(得分:0)
您也可以从v8 mail_thread_view.xml
复制相关代码插入你的todo_view.xml
<!-- Top menu item -->
<menuitem name="Messaging"
id="mail.mail_feeds_main"
groups="base.group_user"
sequence="10"/>
<!-- Left-side menu: Feeds -->
<menuitem id="mail.mail_feeds"
name="Messaging"
parent="mail.mail_feeds_main"
groups="base.group_user" sequence="10"/>
问候费利佩