поле выбора odoo 8 само всегда пустое

#openerp #odoo-8

#odoo #odoo-8

Вопрос:

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

 pull_location = fields.Selection(selection='_get_pull_locations',string='Pull Location')
  

и функция такая, как показано ниже:

 @api.multi
def _get_pull_locations(self):
    data=[]
    ** Get the values from other table based on current record ** 
    return [('value1', 'String 1'), ('value2', 'String 2')]
  

Всегда, когда я отлаживаю, я получаю self как пустой объект класса (stock.test()). сценарий таков: у меня есть столбец с именем zone в stock.test, у меня есть другая таблица с именем stock.location, поэтому для текущей записи я проверяю таблицу stock.location, где столбец pull_zone == зона stock.test, и если да, добавьте выделение (pull_location) с этими значениями.
Но объект всегда пуст.
Я пробовал @api.one, @api.multi, @api.model, ничего не происходит.

Пожалуйста, помогите. Спасибо,

Комментарии:

1. Проверьте принятый ответ odoo.com/fr_FR/forum/aide-1/question /…

Ответ №1:

Замените свой код следующим:

 @api.multi
def _get_pull_locations(self):
    ** Get the values from other table based on current record ** 
    return [
        ('value1', 'String 1'), 
        ('value2', 'String 2')
    ]

pull_location = fields.Selection('_get_pull_locations', string='Pull Location')
  

После этого перезапустите Odoo server и обновите свой модуль.

Комментарии:

1. Привет, odedra, объект self по-прежнему пуст. я хочу получить записи в объекте self