添加社交网络功能
社交网络模块 (技术名称mail) 提供留言板功能和关注的特征,以及消息和通知功能。
社交网络邮件功能由mail.thread模型的mail模块提供。要将其添加到自定义的模型,我们需要执行以下操作︰
- 依赖
mail
模块 - 继承
mail.thread
类 - 将关注者和线程小部件添加到
form
视图 - 为关注者设置记录规则
- 在我们模块的__manifest__.py清单文件中添加对
mail
的依赖︰
1 | 'depends': ['base', 'mail'], |
- 使用我们以前使用的_inherit属性继承mail.thread
1 | _name = "book.rent.return" |
mail.thread
是一种抽象的模型。抽象的模型和普通模型类似,只是他们没有数据库表示;也没有实际的表。抽象的模型不是直接使用。相反,他们都是被混合使用。我们可以将它们看作模板与准备使用的功能。若要创建一个抽象类,我们只需要在创建模块时,使用models.AbstractModel
替代models.Model
。
- 我们在Form视图的底部添加社交网络部件。通过扩展原视图的方式添加。我们使用
view_form_todo_task_inherited
继承已经创建的视图,并其arch
数据块中添加以下内容︰
1 | <div class="oe_chatter"> |
在这里添加的两个字段未被我们进行显式声明,他们由mail.thread
模型声明的。