venom99
@venom99

Как научить JSON понимать кириллицу с помощью Python?

Когда я вытаскиваю данные из БД, и преобразовываю их в JSON чтобы отправить на фронтенд, я получаю неправильное преобразование данных в JSON из-за присутствия кириллицы. Как мне научить JSON понимать кириллицу, чтобы информация во втором принте, выглядела также как в первом?

@app.route('/student', methods=['POST'])
def get_loginn():
    new_one = request.json
    s = json.dumps(new_one)
    x = json.loads(s, object_hook=lambda d: SimpleNamespace(**d))
    with sq.connect("diary.db") as con:
        cur = con.cursor()
        cur.execute("SELECT * FROM student")
        for result in cur:
            if result[0] == x.id_user:
                print(result)
                f = json.dumps(result)
                print(f)
                return jsonify(f)


Получаемый ответ в первом print: (1, 'Швецов ВЕ.', '21-Э-95', 3, None)
Получаемый ответ во втором print: [1, "\u0428\u0432\u0435\u0446\u043e\u0432 \u0412\u0415.", "21-\u042d-95", 3, null]
  • Вопрос задан
  • 1365 просмотров
Решения вопроса 1
@slikkness
f = json.dumps(result, ensure_ascii=False)
print(f)
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@twistfire92
Python backend developer
Зачем вы создаете json строку перед тем, как вызвать jsonify? Передавайте сразу свои данные jsonify(result)

А чтобы с кириллицей не было проблем, в конфигах фласк-приложения пропишите
app.config['JSON_AS_ASCII'] = False
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы