У меня есть словарь на python, который я создал из файла JSON.Теперь мне нужно передать его значения для вставки в базу данных postgresql.
dictionary
if(i['trailers']):
a = [
{'url': i['images'][0]['url'], 'type': i['images'][0]['type']},
{'url': i['images'][1]['url'], 'type': i['images'][1]['type']},
{'url': i['trailers'][0]['url'], 'type': 'Trailer'},
{'url': i['trailers'][1]['url'], 'type': 'Trailer'},
]
else:
a = [
{'url': i['images'][0]['url'], 'type': i['images'][0]['type']},
{'url': i['images'][1]['url'], 'type': i['images'][1]['type']},
]
length = len(a)
Здесь я создал словарь.Если внутри trailer
есть что-то, оно идет A, иначе оно идет B. В случае B, trailers
не существует.Затем я получаю длину словаря.
Теперь я попытаюсь вставить эти элементы в настольный носитель, который зависит от фильмов.Их отношение - фильм (1): СМИ (n).
ВСТАВИТЬ В СМИ
for x in range(length):
query = ("""INSERT INTO media VALUES (%s, %s, %(url)s, %(type)s);""")
data = (media_id, media_movie_id)
cur.execute(query, data)
conn.commit()
media_id += 1
Вот что я пытаюсь сделать.Поскольку в фильме может быть много медиафайлов, я создам форму для перемещения по всем элементам и вставки их в таблицу.При увеличении их идентификатора.
Проблема в том, что я не знаю, как сделать это тихо прямо в Python, поскольку я всегда создаю запрос и данные, а затем cur.execute
это и пример, который яполучил, использовался весь словарь, без какого-либо другого значения.