Я создал на экране продукта настраиваемый модуль с дополнительными полями. Я пытаюсь, чтобы значение по умолчанию было выпадающим со всеми записями, уже отправленными в это поле, или возможностью создать новую запись (то же, что и значение по умолчанию при добавлении продукта в спецификацию).Пользовательское поле по умолчанию - заполняется другими записями из того же поля
class product_part_detail(osv.osv):
_inherit = 'product.template'
_columns = {
'x_mfrname1': fields.char('P/N'),
}
_defaults ={
'x_mfrname1': get_default_name,
}
def get_default_name(self):
return "test"
Я попытался создать поле many2one, который ссылается на поле в другой таблице, но я получаю сообщение об ошибке при попытке установить модуль. Ниже приведен обновленный код, с которым у меня возникают проблемы. Заранее спасибо!
class product_part_detail(osv.osv):
_inherit = 'product.template'
_name = 'product.part.detail'
_columns = {
'x_mfrname1': fields.many2one('product.part.detail.fill', 'x_mfrname1id'),
'x_mfrname2': fields.many2one('product.part.detail.fill', 'x_mfrname1id'),
}
class product_part_detail_fill(osv.osv):
_name = 'product.part.detail.fill'
def _sel_func(self, cr, uid, context=None):
obj = self.pool.get('product.part.detail')
ids = obj.search(cr, uid, [])
res = obj.read(cr, uid, ids, ['x_mfrname1', 'x_mfrname2'], context)
res = [(r['x_mfrname1'], r['x_mfrname2']) for r in res]
return res
_columns = {
'x_mfrname1id': fields.one2many('product.part.detail', 'x_mfrname1', 'x_mfrname2', selection=_sel_func),
}
Спасибо за вашу помощь. Я попытался создать отношение many2one, но сохраняю ошибку при установке модуля. Я обновил свой новый код выше. Любая помощь очень приветствуется, у меня возникают проблемы с расшифровкой официальной документации по оду. –
@CoreyHuntley Я нашел Odoo Development Essentials отличным ресурсом для начала работы с Odoo. –