Trying to return String using Flask

I was trying to return a string using render_template, but it’s only returning the else statement. But it’s working when I’m trying to print in the console. But not when I’m trying to use in jinja.

 def healthchecker():
   # health = ""
   for key,value in raw.items():
     if 'properties' in value:
        health = "Yes"
        print(health) 
                                                        
     else:
        health = "None"                                               
        print(health)

   return health                                         
                                           
 return render_template('portlist.html', data = raw, health = healthchecker())

Answer

Instead of passing the function to the template – you could pass only the dictionary. Then you could easily use it and iterate through it using jinja in your html file.

return render_template('portlist.html', data=raw)

Also, for PEP 8, avoid spaces around equal signs when assigning keyword arguments.