Python 在model2的树状图中显示model1中的字段
我想显示payroll.adjustment.lines中的字段,它是员工id,并从payroll.adjustment模型的树状视图中显示它。可能吗?他们有关系 从工资调整模型Python 在model2的树状图中显示model1中的字段,python,python-2.7,openerp,odoo-10,Python,Python 2.7,Openerp,Odoo 10,我想显示payroll.adjustment.lines中的字段,它是员工id,并从payroll.adjustment模型的树状视图中显示它。可能吗?他们有关系 从工资调整模型 adjustment_lines = fields.One2many('payroll.adjustment.lines','adj_id',string="Adjustment lines") 从payroll.adjustment.lines模型 adj_id = fields.Many2one('payro
adjustment_lines =
fields.One2many('payroll.adjustment.lines','adj_id',string="Adjustment
lines")
从payroll.adjustment.lines模型
adj_id = fields.Many2one('payroll.adjustment',string="Payroll
Adjustment",ondelete='cascade')
在我的xml中
<record id="payroll_adjustment_tree_view" model="ir.ui.view">
<field name="name">payroll_adjustment.tree</field>
<field name="model">payroll.adjustment</field>
<field name="arch" type="xml">
<tree string="Payroll Adjustment" colors="red:state ==
'void';green:state == 'draft';blue:state=='confirm'">
<field name="doc_num"/>
<field name="company_id"/>
<field name="adjustment_lines"/>
<field name="date_from"/>
<field name="date_to"/>
<field name="state"/>
</tree>
</field>
</record>
工资调整树
薪金调整
仅显示(2条记录),不显示员工姓名。请帮帮我,伙计们。谢谢
我尝试了下面的答案,这就是结果。员工姓名显示为false
这是我的树状图,我从行中调用了字段,并从payroll.adjustment模型中将其显示到树状图中
这是我的树状视图的输出,它只显示(记录)
当您覆盖模型
payroll.adjustment.line
的name\u get()
方法时,它可能会工作。下面的代码示例希望是自我解释,也是您案例的一般示例:
来自odoo导入模型、字段和api的
类MyModel(models.Model):
_name=“my.model”
另一个_模型_id=fields.One2Many(
comodel_name=“other.model”,inverse=“my_model\u id”,
string=“其他模型条目”)
类AnotherModel(models.Model):
_name=“另一个.model”
my_model_id=fields.manyOne(
comodel_name=“my.model”,string=“my model”)
number=fields.Integer(string=“A number”)
然而,另一个模型id=fields.manyOne(
comodel_name=“yet.other.model”,string=“yet-other-model”)
@api.multi
def名称_获取(自身):
#使用上下文标志,您可以实现多个
#名称生成的可能性
#最佳示例:res.partner
res=[]
对于self中的另一个_模型:
res.append((另一个_model.id,{}{}).format(
另一个型号,
另一个模型。还有另一个模型(id.name)))
返回res
类YetAnotherModel(models.Model):
_name=“还有另一个.model”
name=fields.Char(string=“name”)
my.model
将是您的payroll.adjustment
,另一个.model
行和。另一个.model
将是hr.employee
后面的模型employee\u id我在XML上调用的字段是另一个模型id(adjustment\u行),其中给出了与我相同的结果,即(2条记录)。我要在XML上调用哪个字段?对不起,我是奥多新手,或者请给我一些有用的链接,以便我学习。谢谢你的努力,先生,你能在你的问题中分享你的树视图的屏幕截图吗?我是指客户显示树的屏幕截图,很抱歉不够具体;-)哦,我完全没有注意到,在这里的树状视图中有一个2万个字段要显示。您可以尝试两种方法:首先尝试对字段adjustmend\u行
使用widgetmany2many\u标记。如果这不起作用,因为小部件不能很好地处理one2many字段,那么可以在my.model
中添加一个计算字段,这将创建一个逗号分隔的字符串,将所有行显示在树视图中。谢谢man@CZoellner。已经解决了。我所做的是创建写函数和一个循环,其中包含一个列表,每个循环都会附加到var_列表中。我在FB的朋友也帮助了我。谢谢你的努力和时间。
<field name="adjustment_lines"/>