Цикл for во Flask

В первом декораторе открываю файл, во втором нужно из импортированной библиотеки Faker рандомно выбить имя и мейл и вывести их 10 раз. Подскажите что не так делаю в цикле for

from flask import Flask                                                    
from faker import Faker                                                    

app = Flask(__name__)                                                      
fake = Faker()    


@app.route('/')                                                            
def read_file():                                                           
    f = open('/Users/dev/Desktop/new_project/requiremets.txt','r')         
    f.read()                                                               
    return f.read()                                                        


@app.route('/user')                                                        
def user():                                                                
    name = fake.name()                                                     
    email = fake.email()                                                   
    single = {'name':name, 'email':email}                                  
    for _ in range(10):                                                    
        return single                                                      


if __name__ == '__main__':                                                 
    app.run(debug=True)                                                    

Ответы (2 шт):

Автор решения: RN2208

Нельзя использовать return внутри функции так как она завершиться на первой же итерации. Так же значением для возврата должна быть строка. Кажется то что вы пытаетесь сделать можно написать без использования цикла.

return (str(single) + '<br>') * 10

Или все же использовать, но уже в шаблонах

./templates/main.html

{% for i in range(10) %}
{{ single }}
{% endfor %}
return render_template('main.html', single=single)
→ Ссылка
Автор решения: DeF-F

Решил, спасибо!

@app.route('/user')
def user():
    result = []
    for _ in range(10):
        name = fake.name()
        email = fake.email()
        result.append({'name': name, 'email': email})

    return str(result)
→ Ссылка