Доступ и импорт данных из частного CSV-файла с помощью os.path.join (...) - PullRequest
0 голосов
/ 24 октября 2018

У меня есть файл CSV в моих личных файлах, из которого я пытаюсь прочитать и импортировать информацию, но я получаю Нет значений, ниже приведен код контроллера импорта, я делаю что-то не так?

Контроллер импорта CSV:

import os
def viewInfo():
db = DAL('sqlite:memory')
db.define_table('Clients',
                     Field('Name'),
                     Field('Surname'))
backfile = os.path.join(request.folder,'private', 'Client_Bookings_Backup.csv')
db.Clients.import_from_csv_file(open(backfile))
grid = SQLFORM.grid(db.Clients, args=[db.Clients], editable=False, deletable=False, user_signature=False)
return locals()

С уважением:

Mostwanted

1 Ответ

0 голосов
/ 25 октября 2018

Благодаря Энтони я смог выяснить, что мои заголовки таблиц в моей модели db отличаются от заголовков таблиц в моей функции контроллера, определенной в db.Заголовки в моей модели db начинались с маленьких букв, в то время как заголовки в функции контроллера начинались с заглавных букв, но как только я сопоставил заголовки в таблице db модели и функции db контроллера, я смог импортировать их из файла CSV.

МОДЕЛЬ:

db.define_table('person',
            Field('name'),
            Field('surname'))

CSV ИМПОРТ КОНТРОЛЛЕР:

def viewInfo():
db = DAL('sqlite:memory')
db.define_table('Clients',
                Field('name'),
                Field('surname'))
backfile = os.path.join(current.request.folder,'private', 'Client_Bookings_Backup.csv')
db.Clients.import_from_csv_file(open(backfile))
grid = SQLFORM.grid(db.Clients, args=[db.Clients], editable=False, deletable=False, user_signature=False)
return locals()

Еще раз спасибо, Тони

С уважением:

Mostwanted

...