我有一个具有onchange方法的类,它从另一个模型中检索活动名称。当我运行它时,我得到一个这样的错误。在
AttributeError:'在浏览记录中找不到字段活动名称(年度预算活动,16)'
有人能告诉我为什么会这样吗?我该怎么解决它?在
我的类使用onchange方法
class wpb(osv.osv):
_name = "wpb.wpb"
_description = "Work Program and Budget"
_columns = {
'activity_id' : fields.many2one("budget.activity_summary", "ID", type="char", size=64, ondelete="no action"),
'activity_name' : fields.char("Activity Name", type="char", size=64, ondelete="no action" ),
'region_id' : fields.related("activity_code", "region_id", type="char", string="Management Unit"),
'service_lvl' : fields.float("Service Level", digits=(4,2)),
'annual_work' : fields.float("Annual Work", digits=(4,2)),
}
def onchange_activity_code(self, cr, uid, ids, activity_id, context = None):
if activity_id:
names = self.pool.get('budget.activity_year').browse(cr, uid, activity_id, context=context)
return {'value': {'activity_name': names.activity_name }}
return {'value':{}}
xml视图
^{pr2}$类正在尝试获取活动名称字段
class activity_year(osv.osv):
_name = "budget.activity_year"
_description = "Activity year"
_rec_name = "activity_yearcode"
_columns = {
'activity_yearcode' : 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_yearcode_unique', 'UNIQUE(activity_yearcode)', 'Each activity code is unique.'),
]
名称的类型是记录列表,因此要浏览记录列表,必须定义元素。 在您的情况下,您可以键入:name[0].activity\u name>;作为名称的第一条记录的活动名称。 原谅我英语不好
您的
activity_id
与budget.activity_summary
有关系,您可以从budget.activity_year
获得值。我认为这可能与budget.activity_year
有关。改变这种关系,尝试下面的“改变方法”。在试试这个
on_change
请参阅其他
on_change
格式,这样您就可以更清楚地了解它了。在On Change Method Tips
希望这对你有帮助。在
更新您的onchange方法
.py文件
^{pr2}$activity_name
字段设置值来自年度预算活动对象。在相关问题 更多 >
编程相关推荐