Импортируйте данные в Google App Engine так, чтобы пользователь приложения был "легок"
Создание приложения с использованием Python в GAE, которое обрабатывает много пользовательских данных, таких как контакты, встречи и т. Д.
Хотелось бы разрешить пользователям импортировать свои старые данные из других приложений. Например, встреча может выглядеть так:
Время начала Продолжительность Сервис Идентификатор клиента 2012-08-02 09:50AM, 01:00:00, Стрижка, 94782910, 2012-08-02 10:50AM, 00:30:00, Dye Job, 42548910, ...
Я не знаком с общепринятыми практиками в таких ситуациях. Я также вижу проблемы с обработкой этого на Google App Engine, в частности, потому что запросы не могут занимать более 30 секунд.
В идеале кажется, что пользователи должны иметь возможность загружать CSV-файлы своих данных через веб-страницу, но я действительно не знаю хорошего способа сделать это с помощью движка приложения.
Другой способ, который я могу придумать, - позволить пользователям вырезать и вставлять текст непосредственно в текстовую область HTML. Затем javascript можно использовать для итерации данных и отправки их на сервер по одной строке за раз или небольшими порциями. Это звучит очень схематично для меня, хотя.
Любые идеи о том, что будет "хороший" способ справиться с этим?
Спасибо!
2 ответа
Все зависит от того, сколько строк вы собираетесь импортировать, если его умеренное количество (до 50 строк) вы можете выполнить в обработчике. Если его больше, вам нужно будет использовать конвейер (который поддерживает работу с csv) и, возможно, отправит пользователю электронное письмо после завершения импорта.
Попросите пользователя загрузить файл, а затем запустите задачу, которая запускает импорт. Отправить результаты / ошибки пользователю в конце. Другой способ, который я сделал, - попросите пользователя создать электронную таблицу в документах Google, попросите его предоставить ключ листа или ссылку, если она опубликована, и затем запустите задачу, которая обрабатывает электронную таблицу непосредственно из документов Google.