【发布时间】:2016-06-28 16:55:46
【问题描述】:
我正在从我的模型创建一个表,但没有创建字段名称“id”。 代码如下:
from opener import models, fields
class other_class(models.Model) :
{this is other table columns}
class Test(models.Model):
_name = 'stock.location.product.rel'
location_id = fields.Many2one('stock.location','Location',required=True,ondelete="cascade")
product_id = fields.Many2one('product.product','Product',required=True,ondelete="cascade")
现在当我运行它时,会创建表“stock_location_product_rel”,但只有列(location_id、product_id、create_uid、create_date、write_uid、write_date)我没有看到名为“id”的列
我什至尝试过使用(osv.osv),它不起作用。
谢谢,
更新:
我使用了相同的代码,但表名不同,那么它有效吗?有人可以解释一下吗?
工作代码是:
class Test(models.Model):
_name = 'stock.location.product'
location_id = fields.Many2one('stock.location','Location',required=True,ondelete="cascade")
product_id = fields.Many2one('product.product','Product',required=True,ondelete="cascade")
我只删除了 .rel ?
更新:2
我在产品表和位置表上创建了many2many字段,它自动创建了表(stock.location.product.rel),然后创建了类来访问它,同样没有id列。
请帮忙
【问题讨论】:
-
运行
select id from stock_location_product时会发生什么?来自psql -
嗨 danidee,错误 ID“列 ID 不存在”
-
如果表中没有重要信息,请删除表,然后升级 odoo 模块以重新从头开始重新创建它...因为据我所知 id (主键) 由 odoo 自动处理,您无需手动操作
标签: postgresql openerp odoo-8