импортировать CSV-файл в базу данных MySQL с помощью веб-приложения Django - PullRequest
0 голосов
/ 26 августа 2009

Я пытаюсь загрузить CSV-файл в мое веб-приложение и сохранить его в базе данных MySQL, но не получилось. Пожалуйста, кто-нибудь может мне помочь?

мой скрипт user.py:

def import_contact(request):
if request.method == 'POST':
    form = UploadContactForm(request.POST, request.FILES)
    if form.is_valid():
        csvfile = request.FILES['file']
        print csvfile

        csvfile.read()
                    testReader = csv.reader(csvfile,delimiter=' ', quotechar='|')




        for row in testReader:
            print "|".join(row)
    return HttpResponseRedirect('/admin')

else:
    form = UploadContactForm()

vars = RequestContext(request, { 'form': form })
return render_to_response('admin/import_contact.html', vars)

мой скрипт forms.py:

class UploadContactForm(forms.Form):
file  = forms.FileField(label='File:', error_messages = {'required': 'File required'})

1 Ответ

1 голос
/ 26 августа 2009

Поскольку вы не предоставили код для функции getcsv, мне придется немного использовать свой хрустальный шар.

Одна из причин, по которой печать в цикле for row in testReader: не работает, заключается в том, что getcsv может уже обрабатывать файл. Используйте метод seek , чтобы снова обнулить положение объектов в файле. Таким образом, цикл for будет правильно его обрабатывать.

Еще одна причина, по которой в базе данных ничего не хранится, может заключаться в том, что в предоставленном вами коде нет ссылки на модель . Так как же Джанго знать, что он должен хранить и где?

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