Задать вопрос
@howuu

Как создать и заполнить объект dict с ключами sqlite3?

Сейчас у меня есть list и база данных, которая выглядит так:
5c94353a1e8d4754009577.jpeg5c943541ecab3267273239.jpeg
В ней есть 3 таблицы category, product, media

А list я создаю так:

def select_product_all(self):
        with self.connection:
            products = []
            for product in self.cursor.execute("SELECT  * FROM products_product,  products_product_media WHERE products_product.id = products_product_media.product_id").fetchall():
                products.append(product)
        self.connection.close()
        return products


Сейчас, что бы например вывести строку
Для обычного кактуса соответствует картинка media/1.jpg

Мне нужна вызывать это к примеру так
print ("Для",  products[0][1] , " соответствует картинка" ,  products[0][6])

Вот, а хочу сделать словарь и подставить туда все эти значения, так что бы я мог вызывать это так
print("Для",  products.name , " соответствует картинка" ,  products.media])


Как мне переделать код так, что бы все ключи вроде price, category_id и т.д. заполнились в словарь?
  • Вопрос задан
  • 218 просмотров
Подписаться 1 Простой Комментировать
Решение пользователя bbkmzzzz К ответам на вопрос (2)
@bbkmzzzz
Ну или, если не ORM, то создавайте свой класс и инициализируйте записью из базы
class Product:
    def __init__(self, data_from_db):
        self.name = data_from_db[1]

def select_product_all(self):
        with self.connection:
            products = []
            for product in self.cursor.execute("SELECT  * FROM products_product,  products_product_media WHERE products_product.id = products_product_media.product_id").fetchall():
                products.append(Product(product))
        self.connection.close()
        return products

for i product in products:
    print(product, product.name)
Ответ написан