Ошибка при попытке запустить файл .py для добавления данных в базу - PullRequest
0 голосов
/ 12 июня 2019

Я создаю 2 файла .py в приложении моего проекта.мое приложение si importXLS.

, когда я хочу запустить свое приложение, оно не работает.Первый файл идет и анализировать файл Excel.Кажется, работает хорошо, второй файл должен добавить каждый элемент первого и сохранить его в базе данных. Этот файл не работает.

Это первый файл, который анализирует файл Excel:

from openpyxl import load_workbook


def is_empty(row):
    return all(cell.value is None for cell in row)


def is_empty_gl(row):
    return row[0].value is None


def has_empty_cells(row):
    return any(cell.value is None for cell in row)

# ----------------Chart of accounts--------------


def parse_coa():

    wb = load_workbook(filename='Chartofaccount.xlsx')
    ws = wb.active

    coa = []

    for row in ws.iter_rows(min_row=2, min_col=2, max_col=5):

        if is_empty(row):
            continue
        elif is_empty_gl(row):
            print('missing cell value found {}. Please fix and run again'.format(row[1].value))
#            exit()
        else:
            chartdictionnary = {
                'field_account': row[0].value,
                'field_account_libaccount': row[1].value,
                'field_type': row[2].value,
                'field_subtype': row[3].value,
                }
            coa.append(chartdictionnary)

    return coa

Thisэто второй файл, который не работает Ошибка: db.connect () NameError: имя 'db' не определено.Но я не знаю, как подключиться к базе данных (которая является sqlite для dev, но должна быть другой в prod)

from read_data import parse_coa



db.connect()
for coa in parse_coa():
    coa = ChartOfAccount(field_account=coa['field_account'],field_account_libaccount=coa['field_account_libaccount'],
                         field_type=coa['field_type'], field_subtype=coa['field_subtype'])
    coa.save()

db.close()

Добавить данные в базу данных

1 Ответ

0 голосов
/ 12 июня 2019

Строго следуя указанному здесь коду, вы никогда не определяли класс db.

Импортировали ли вы какую-то часть кода?Нравится:

from packet import database as db ?
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...