繁体   English   中英

Odoo 10报告表foreach行

[英]Odoo 10 report table foreach line

这是python代码:

@api.depends('employee_id')
    def create_employee_report(self):
        count = 0
        employee_data = {}
        for employee in self.env['hr.employee'].search([]):
            if employee.socialsecurityno:
                count = count + 1
                employee_data ={'sira':str(count),'sigortano':str(employee.socialsecurityno)}
        return employee_data

和view.xml

    <tbody>
    <tr t-foreach="o.create_employee_report()" t-as="t">
      <td class="td-lrbotborder">
        <span t-field="t.sira" style=" font-size:13px;" />
      </td>
    <tr>

这是错误信息:

Error to render compiling AST
AttributeError: 'str' object has no attribute '_fields'
Template: hr_module.sosyal_sigorta_report_document
Path: /templates/t/t/div/div/div/div[11]/table/tbody/tr/td[1]/span
Node: <span t-field="t.sira" style=" font-size:13px;"/>

我将如何使用t-foreach? 我正在尝试创建表格列和行。 这部分将填补线,但我无法做到。

通过t-esc改变t-field ,用t_value例子改变 t.sira

 <tr t-foreach="o.create_employee_report()" t-as="t">
  <td class="td-lrbotborder">
      <span t-esc="t_value" style=" font-size:13px;" />
  </td>
</tr>

这是我的xml;

<table class="table table-condensed" style="width: 100%; border-collapse: collapse;">
        <thead>
            <tr>
                <th class="td-allborder" style="width:30px; font-size:11px;">Sıra</th>
                <th class="td-topbotborder" style="width:75px; font-size:10px;">Sigortalı No.</th>
            </tr>
        </thead>
        <tbody>
            <tr t-foreach="o.create_employee_report()" t-as="t">
                <td class="td-lrbotborder">
                    <span t-esc="t_value" style=" font-size:13px;" />
                </td>
                <td class="td-botborder">
                    <span t-esc="t_value" style=" font-size:13px;" />
            </tr>
        </tbody>
    </table>

这是python文件;

@api.depends('employee_id')
    def create_employee_report(self):
        count = 0
        employee_list = []
        employee_data = {}
        for employee in self.env['hr.employee'].search([]):
            if employee.socialsecurityno:
                employee_data ={'sira':str(count),
                                'sigortano':str(employee.socialsecurityno),
                                'kimlikno':str(employee.personelno),
                                'isim':employee.name}
                count = count + 1
                employee_list.append(employee_data)
        print employee_list
        return employee_list

编辑:我解决了这个问题;

<span t-esc="t['sira']" style=" font-size:13px;" />

谢谢你的回复。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM