Skip to Content
Menu
This question has been flagged
3 Replies
9363 Views

Hello, Odoo community! 

I have a text field that fills with a list of a product like below, how can I write each product in a separate line.

food = ['Gouda Cheese', 'Pizza Italiana']

I want :

food = ['Gouda Cheese',

              'Pizza Italiana']

my python code:

food = fields.Text(string = 'food')

@api.onchange('date')
def _onchange_food(self):
d= datetime.datetime.strptime(self.date , "%Y-%m-%d").strftime('%A')
self.food =self.env['lunch.menu'].search([('day', '=', d)]).mapped('product.name')


Avatar
Discard

Could you please explain more?

Best Answer

You can go with Join like this

self.food ='\n '.join(self.env['lunch.menu'].search([('day', '=', d)]).mapped('product.name'))



Avatar
Discard
Author

thanks a lot.

Best Answer

I normally use the Html field, but you can use the html widget for the field in the view. I use this method for logging while importing data in custom wizards. you can use ordered list or whatever you want and it shows the data line by line. 

I then normally just do

def display_log(self, log_list):
  tmp_text = ''
  for item in list:
     tmp_text + = '<p>{}</p>'.format(item)
  self.food = tmp_texp

Avatar
Discard
Related Posts Replies Views Activity
0
Mar 15
2863
0
Dec 24
59
2
May 23
997
1
Jun 22
3456
1
Feb 19
3718