gpt4 book ai didi

python - many2one 字段不显示字段值

转载 作者:行者123 更新时间:2023-11-29 13:31:01 25 4
gpt4 key购买 nike

我在将一个 many2one 字段链接到另一个 many2one 字段时遇到问题。我得到像 1、2、3 这样的数字(我认为它是记录号)而不是下拉列表中的字段值。

下面,我有 3 个类事件代码、事件数据和事件摘要。

事件摘要有一个名为“activity_code”的多对一字段,它与事件数据相关,而事件数据有一个多对一字段,与事件代码相关。我能够在事件数据表单的下拉列表中看到字段值,它工作正常,但我无法在事件摘要表单中查看它。我得到一位数

谁能告诉我为什么会这样,我该如何解决它以显示预期值而不是数字?下面是我的代码。

事件代码

class activity_yearcode(osv.osv):
_name = "budget.activity_code"
_description = "Activity Year Code"
_rec_name = "activity_code"
_columns = {
'activity_code' : fields.char("Activity Code", size=64, required=True),
'activity_name' : fields.char("Activity Name", size=128),
'act_status' : fields.selection([
('1', 'All'),
('2', 'Active'),
('3', 'Inactive'),
], 'Status'),
}
_sql_constraints = [
('activity_code_unique', 'UNIQUE(activity_code)', 'Each activity code is unique.'),
]

事件数据 - 工作正常

class activity_data(osv.osv):

_name = "management.activity_data"
_description = "Activity Data"
_rec_name = "activity_data_num"
_columns = {
'activity_data_num' : fields.char('activity_data_num', size=16),
'activity_code' : fields.many2one( "budget.activity_code","Activity Code",required=True),
'management_unit_code' : fields.many2one("budget.org_table","Management Unit Code", required=True),
}
_defaults = {
'activity_data_num': lambda self,cr,uid,context={}: self.pool.get('ir.sequence').get(cr, uid, 'management.activity_data'),
}
_sql_constraints = [
('activity_data_num', 'UNIQUE(activity_data_num)', 'Each activity_data_num is unique.'),
]

事件摘要 - 在此模型中,我在下拉列表中获得一位数字,而不是“事件代码”字段中的字段值。

class activity_summary(osv.osv):
_name = "work.activity_summary"
_description = "Activity Summary"
_columns = {
'activity_code' : fields.many2one("management.activity_data", "Activity Code", ondelete= "no action", required=True ),
'management_code' : fields.related("activity_code", "activity_data_num", "management_unit_code", type = "char", string = "Management code"),
'region_id' : fields.char("Region ID", size=64, required=True),
'daily_prod' : fields.integer("Daily Prod"),
'deviation' : fields.integer("Deviation Level"),

}

请帮助..提前谢谢你。

最佳答案

试试这段代码,

class activity_summary(osv.osv):
_name = "work.activity_summary"
_description = "Activity Summary"
_columns = {
'activity_code' : fields.many2one("budget.activity_code", "Activity Code", ondelete= "no action", required=True ),
'management_code' : fields.related("activity_code", "activity_data_num", "management_unit_code", type = "char", string = "Management code"),
'region_id' : fields.char("Region ID", size=64, required=True),
'daily_prod' : fields.integer("Daily Prod"),
'deviation' : fields.integer("Deviation Level"),
}

你的其他代码没问题。如果您在获取值方面有任何问题,请尝试此类(class)。

希望这能帮助您获得值(value)。

关于python - many2one 字段不显示字段值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23193633/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com