У меня есть форма пользовательского ввода здесь:
http://www.7bks.com/create (требуется вход в Google)
При первом создании списка вас просят создать публичное имя пользователя.К сожалению, в настоящее время нет никаких ограничений, чтобы сделать это уникальным.В настоящее время я работаю над кодом для обеспечения уникальных имен пользователей и хотел бы узнать, как лучше всего это сделать.
Технические подробности: appengine, python, webapp framework
What I 'Планирование m выглядит примерно так:
- сначала форма / create отправляет данные в / inputlist / (это то же самое, что и в настоящее время)
- / inputlist / запрашивает хранилище данных дляданное имя пользователя.Если он уже существует, перенаправьте обратно на / create
- , чтобы отобразить страницу / create со всей ранее указанной информацией, но с дополнительным сообщением об ошибке «это имя пользователя уже занято»
Myвопрос:
- Это лучший способ обработки проверки на стороне сервера?
- Каков наилучший способ хранения деталей списка, пока я проверяю и изменяю имя пользователя?
На мой взгляд, у меня есть 3 варианта для сохранения деталей списка, но я не уверен, что «лучше»:
- Сохранить детали списка в файле cookie сеанса (яиспользуя GAEsessions для файлов cookie)
- Определите отдельный класс POST для / create и отправьте данные списка обратно из / inputlist / на страницу / create (в настоящее время / create имеет только класс GET)
- Сохраните список в хранилище данных, хотя имя пользователя не уникально.
Большое спасибо за вашу помощь:)
Я симпатичнаяплохо знакомы с Python и кодирования в целом, так что если я пропустил сЧто-то очевидное мои извинения.
Том
PS - Я уверен, что в конце концов смогу это выяснить, но я не могу найти какую-либо документацию по POSTing данным с использованием фреймворка webapp appengine, который янужно для того, чтобы сделать решение 2 выше: s, может быть, вы могли бы указать мне правильное направление для этого тоже?Спасибо!
PPS - Это немного устарело, но вы можете примерно увидеть, как сейчас работают / create и / inputlist / code: 7bks.com Gist