Имя в форме одного поля не совпадает с именем в поле ввода - PullRequest
0 голосов
/ 26 июня 2018

Я создал связанное поле в пользовательской форме расчета и использую odoo 10. Я не могу получить то же имя в поле формы one2many с полем ввода.

Я прикрепил картинку ниже. Надеюсь здесь, я хочу сделать имя черным пером и имя синим пером. Но на картинке я не могу получить название из синего пера на черной ручке.

problem

Вот мой код:

gaji.py
  emp_id = fields.Many2one('karyawan', 'Karyawan')

karyawan.py
  nama = fields.Char(string="Nama Karyawan")
  gaji_ids = fields.One2many('gaji', 'emp_id', 'Gaji')

karyawan_view.xml
   <page string="Gaji" name="gaji">
                        <field name="gaji_ids" context="{'default_emp_id':nama}" widget="one2many_list">
                            <tree editable="bottom">
                                <field name="emp_id" attrs="{'readonly': [('emp_id', '!=', False)]}"/>
                                <field name="gaji_pokok"/>
                                <field name="jumlah_hari_kerja"/>                                    
                                <field name="jumlah_kerja"/>  
                                <field name="libur"/>                                                                      
                                <field name="jam_lembur"/>                                    
                                <field name="t_lembur"/>
                                <field name="t_transportasi"/>
                                <field name="total_pendapatan"/>
                            </tree>
                        </field>
                    </page>

Кто-нибудь может мне помочь с этим?

Ответы [ 3 ]

0 голосов
/ 26 июня 2018

Переименовать имя поля nama в name в karyawan.py

karyawan.py

name = fields.Char(string="Nama Karyawan")

В поле many2one система извлечет значение поля name в комоделе. Если поле name не существует, будет отображаться название модели с идентификатором (karyawan, 2).

Надеюсь, это поможет вам.

0 голосов
/ 27 июня 2018

добавить это в вашу модель

 _rec_name= 'nama'

nama = fields.Char (string = "Nama Karyawan") gaji_ids = fields.One2many ('gaji', 'emp_id', 'Gaji')

0 голосов
/ 26 июня 2018

У вас есть две разные метки полей:

emp_id = fields.Many2one('karyawan', 'Karyawan')  # second parameter is the label

и

nama = fields.Char(string="Nama Karyawan")  # string parameter is the label

Так что поменяй одно из двух.

...