Почему jinja отдает элементы списка с кавычками??

Добрый день.

Отдаю в шаблон jinja объкет-генератор содержащий список подобного типа:
('Super post', 'helo gelo everybody', ['tag', 'tag2'])

Начинаю это дело итерировать в шаблон
{% for poster in post %}
            <div class="blo">
             <h1>{{ poster[0] }}</h1>{{ poster[1] }}
                    <div class="sashacom" >
                        {% for item in poster[2] %}
                            {% if item != poster[2][-1]%}
                                <a href="{{ url_for('tag', tag = item) }}"><b>{{ item }}</b></a>,
                            {% else %}
                                <a href="{{ url_for('tag', tag = item) }}"><b>{{ item }}</b></a>
                            {% endif %}
                        {% endfor %}
                    </div>
            </div>
        {% endfor %}


Нулевой и первый элемент отображаются нормально, элементы списка отображаются с кавычками!!

Передаю в шаблон:
@app.route('/index/<int:page>', methods=['GET'])
def index(page):
        paginate = Pagination(page)
        return render_template('index.html',
            paginate=paginate,
            title = 'Simple blog on Flask',
            post = posts.get_posts_index(page),
            tag = posts.get_tags_index())


Передаю через параметр Post.
Функция:
def get_posts_index(PAGE):
    for posts in p.query.order_by(Post.timestamp.desc()).slice(start=POSTS_PER_PAGE*(PAGE-1),stop=POSTS_PER_PAGE*PAGE):
        yield (posts.title, posts.body, posts.tag)


Кто-то сталкивался с подобным? уже мозг вломал себе.
Спасибо за наводки
  • Вопрос задан
  • 2534 просмотра
Пригласить эксперта
Ответы на вопрос 2
crazyzubr
@crazyzubr
Python backend-developer
Скорее всего posts.tag это строка, а не список.
Ответ написан
@narnik
У меня была проблема, что список воспринимался как строка, и решить удалось лишь при помощи [1:-1], и split(" ', ' ")
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы