2016-11-03 8 views
0

Как я могу напечатать с помощью нового апи построчно в myrecord_ids поля (имя)Read построчного odoo 9

@api.multi 
def func(self): 
    for line in self.browse(myrecord_ids): 
     print(line.name) 

Я хочу напечатать эту строку: https://postimg.org/image/nvl45fuuh/

+0

Вы получаете ошибку? Где определяется myrecord_ids? Возможно, вы имеете в виду 'self.myrecord_ids' –

+0

@phillipstack при использовании self.myrecord_ids print return: myrecord_ids (1,) myrecord_ids (2,) myrecord_ids (3,) как отображаемое имя –

+0

Я отправлю решение. –

ответ

1
@api.multi 
def func(self): 
    for line in self.myrecord_ids: 
     print(line.name) 

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

@api.multi 
def func(self): 
    for line in self.myrecord_ids: 
     print(line.read([])) 
+0

ProgrammingError: невозможно адаптировать тип 'myrecor ............' –

+0

Не могли бы вы показать больше ошибки, с которой вы сталкиваетесь./ –

+0

Трудно догадаться, не зная больше о вашем коде. Я буду поправлять мои сообщения. –

0

если self.myrecord_ids возвращает myrecord_ids (1) myrecord_ids (2,) myrecord_ids (3,), то вы работаете с записями, так что вы можете использовать список понимание, чтобы получить все имена:

list_of_names = [i.name for i in self.myrecord_ids]

, а затем просто распечатайте его в цикле или с помощью «,» .join (list_of_names). В случае, если вы хотите увидеть идентификаторы, поместите его в выражение, например:

list_with_ids = ["%d: %s" % (i.id, i.name) for i in self.myrecord_ids]

Смежные вопросы