尝试运行文件.py以在数据库中添加数据时出错

时间:2019-06-12 12:12:22

标签: python django pycharm

我在我的项目的应用程序中创建了两个文件.py。我的应用程序为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

这是第二个无法正常工作的文件错误是:db.connect() NameError:未定义名称“ db”。但是我不知道如何连接到数据库(这是dev的sqlite,但应该是产品中的另一个)

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 :(得分:0)

严格按照此处发布的代码,您从未定义db类。

您是否已导入部分代码?喜欢:

from packet import database as db ?