Как заполнять данные из полей ввода в ячейки таблицы через python-docx и сохранять их в БД Sqlite
я новичок в Python знаю некоторые основы. Помогите пожалуйста советом. Есть простой интерфейс на PyQt5 в котором 4 поля ввода. Идея такая нужно чтобы при вводе текста в поля ввода при нажатии на кнопку создавался docx файл с со строкой и из четырех столбцов и в каждой ячейке выводились значения из полей ввода. И нужно чтобы по умолчанию в первой строке в ячейках было 4 заголовка,ну а дальше снизу добавлялись строки со значениями введенными в поля ввода. По допотопному с переменными у меня получилось это сделать, присваивая переменным значения из полей ввода. В общем мне в итоге нужно чтобы по хорошему значения из полей ввода записывались в базу данных Sqlite например и потом оттуда выводились в назначенные ячейки в плане того чтобы старые записи сохранялись в БД и уже оттуда подгружались в ячейки, а следом можно было добавлять из полей ввода новые данные. Пример: Например по нажатию кнопки создается файл docx в нем из начально сразу создается строка 4 ячейки в них уже есть Заголовки допустим "Дата" "Продукт" "Кол-во" "Цена". а ниже по нажатию кнопки добавлялись новые строки с данными из полей ввода. Какие есть идеи? Как лучше сделать, добавлять в словарь кортежи из этих данных и потом выводить? Не совсем пойму как это можно сделать, подскажите пожалуйста хотя бы в крации идею как это можно сделать. Мне именно логику понять. То что там в PyQt5 как создаются привязываются поля интерфейсы это мне понятно как делать.
Ответы (1 шт):
поменьше бы воды в вопросе... "В общем мне в итоге нужно чтобы по хорошему значения из полей ввода записывались в базу данных Sqlite"
def add_row(date, product, quantity, price):
# Подключаемся к базе данных
conn = sqlite3.connect("mydatabase.db")
cursor = conn.cursor()
# Вставляем новую запись в таблицу
params = (date, product, quantity, price)
cursor.execute('''
INSERT INTO table (date, product, quantity, price)
VALUES (?, ?, ?, ?)
''', params)
# Сохраняем изменения и закрываем соединение
conn.commit()
conn.close()
" по нажатию кнопки создается файл docx в нем из начально сразу создается строка 4 ячейки в них уже есть Заголовки допустим "Дата" "Продукт" "Кол-во" "Цена". а ниже по нажатию кнопки добавлялись новые строки с данными из полей ввода. Какие есть идеи?"
почему нужен docx файл? не лучше ли будет создавать excel таблицу? создать таблицу в pandas и загрузить ее в excel.
def get_data():
# Подключаемся к базе данных
conn = sqlite3.connect("mydatabase.db")
# Выполняем SQL-запрос для извлечения данных
query = "SELECT * FROM table"
df = pd.read_sql_query(query, conn)
# Закрываем соединение с базой данных
conn.close()
return df
def create_excel(file="продажи.xlsx"):
# Сохраняем DataFrame в файл Excel
df = get_data()
df.to_excel(file, index=False)
print(f"Таблица успешно сохранена в файл: {file}")