#view #odoo #wizard #odoo-12
Вопрос:
Я хочу добавить мастер с Many2many
полем 'stock.production.lot'
отображения только записей ,с Lot/Serial Number
помощью которого я выполнял функцию, получающую фильтрованные записи, теперь мне нужно отобразить ее
class DoublingNumber(models.TransientModel):
_name = 'doubling.number'
double_number_id =fields.Many2many('stock.production.lot' ,string="Numéros en doublant" )
@api.multi
def _default_double_number(self):
log.warning("Hola")
double_record = []
records =self.env['stock.production.lot'].search([])
for record in records :
for record2 in records :
if record.name == record2.name and record.product_id != record2.product_id :
double_record.append(record2)
break
return double_record
Теперь, как это отобразить ??!
Комментарии:
1. Вы можете использовать ключевое слово по умолчанию, чтобы указать функцию, которая вычисляет значение
double_number_id
поля и возвращает набор записей. Вы можете найти пример в модуле календарь , функция определена в строке 585
Ответ №1:
Попробуйте вызвать функцию по умолчанию в определении поля, но определите функцию перед полем и вместо этого определите ее следующим образом :
class DoublingNumber(models.TransientModel):
_name = 'doubling.number'
@api.model
def _default_double_number(self):
log.warning("Hola")
double_record = self.env['stock.production.lot']
records =self.env['stock.production.lot'].search([])
for record in records :
for record2 in records :
if record.name == record2.name and record.product_id != record2.product_id :
double_record = record2
break
return double_record
double_number_id =fields.Many2many('stock.production.lot' ,string="Numéros en doublant", default = _default_double_number)
Удачи 🙂
Комментарии:
1. Большое вам спасибо ,это работает как волшебство !