Динамические переменные в json со значениями настроек Django
Я работаю с библиотекой python для определенного api сервиса. И для того, чтобы подключиться к своему аккаунту, они используют json файл. Вот как выглядит подключение к API.
api = VoximplantAPI('credentials.json')
credentials.json
{
"account_email": "my email",
"account_id": "ac_id",
"key_id": "key_id",
"private_key": "private"
}
Я удалил значения. У меня вопрос, как я могу добавить динамические переменные в json, чтобы я мог брать значения из настроек Django, например, используя Jinja. Я искал ответ в течение нескольких часов, но не нашел его.
Json в python технически является словарем, поэтому вы можете обновлять его так же, как вы обновляете словарь
Например,
a = {"a": 123}
b = {"b": 456}
Написав a.update(b), вы получите в ответ
{"a": 123, "b": 456}
Таким же образом пройдитесь по всем данным, которые вы хотите добавить в json. Например,
final_json = {
"account_email": "my email",
"account_id": "ac_id",
"key_id": "key_id",
"private_key": "private"
}
users = User.objects.filter(name="test")
temp_dict = {}
count = 1
for user in users:
temp_dict.update({f"first_name{count}": user.first_name})
count += 1
Затем обновите final_json на
final_json.update(temp_dict)
Вы получите json в виде:
{
"account_email": "my email",
"account_id": "ac_id",
"key_id": "key_id",
"private_key": "private",
"first_name1": "value_1",
"first_name2": "value_2",
..
..
..
}