В приложении для работы с флягами, над которым я работаю, я использую имена штатов США как часть структуры url. Имена состояний извлекаются из словаря Python, который связывает сокращения состояний с соответствующими именами, например,
state_dict = {"Alabama" : "AL", "Alaska" : "AK",...
Это нормально, когда в имени штата нет пробелов. например http://example.com/Alabama/
Однако, когда у рассматриваемого государства есть пробел, оно образует плохой URL. например http://example.com/North%20Dakota/
В настоящее время я обхожу это, проявляя осторожность, когда создаю URL, используя имена состояний, чтобы использовать что-то вроде state=state.replace(' ', '_')
в качестве аргумента в url_for()
. Тем не менее, это громоздко и кажется грубым.
Как лучше использовать имена состояний в качестве части URL-адреса без необходимости каждый раз изменять их вручную? Дополнительные баллы, если решение также можно использовать для изменения букв верхнего регистра в строчные.
Я рассмотрел изменение состояния dict, чтобы сделать его дружественным, например, north_dakota
вместо North Dakota
тем не менее, dict также используется при создании текста для отображения пользователям и учитывает читаемость.
Большое спасибо за ваше время!