我对odoo很新,从使用odoo 11.0构建模块开始。
一切都很好,直到教程点Inheritance让我创建一个扩展res.parter的新Partener.py文件...
我跟着并重新阅读了很多次的教程,而且一切都是一样的。为什么我会收到错误:
psycopg2.ProgrammingError: column res_users.notification_type does not exist
LINE 1: ... "share","res_users"."partner_id" as "partner_id","res_users...
这是partner.py
# -*- coding: utf-8 -*-
from odoo import fields, models
class Partner(models.Model):
_inherit = 'res.partner'
# Add a new column to the res.partner model, by default partners are not
# instructors
instructor = fields.Boolean("Instructor", default=False)
session_ids = fields.Many2many('openacademy.session',
string="Attended Sessions", readonly=True)
我有同样的问题:“列res_partner.instructor不存在”
我可以通过在上面的代码模型/ partner.py末尾添加:Partner()来解决此错误。
from odoo import models, fields, api
class Partner(models.Model):
_inherit = 'res.partner'
instructor = fields.Boolean("Instructor", default=False)
session_ids = fields.Many2many('openacademy.session',
string="Attended Sessions", readonly=True)
Partner()
另一种方法是通过SQL添加字段。
sudo -u postgres psql
\c yourdatabase
ALTER TABLE res_partner ADD COLUMN instructor boolean default False;
重启并准备好了。
解决方法是为odoo生成一个配置文件,因为我开始的会话使用了上一个项目的db,因此他没有db内的表。
-s Path/odoorc_nameConfig -s --dev=xml,pdb,qweb
并添加一个dbfilter以查看正确的数据库!
之后在教程中提醒在清单中添加依赖'sale'!
'depends': ['base',
'sale',
],
现在你可以继续使用Odoo 11.0进行教程,因为他们没有说你需要依赖'sale'继承类res.partner!