Google App Engine - раздел администратора - PullRequest
1 голос
/ 14 ноября 2010

Я пишу веб-приложение с Google App Engine на Python, которое позволяет пользователям читать книги. Я бы хотел, чтобы только администраторы могли добавлять на сайт информацию о книгах и содержание страниц книг.

При ограничении доступа к определенным страницам с помощью конфигурации app.yaml, например, приведенной ниже, необходимо, чтобы сценарий, связанный со страницами администратора, отличался от сценария, используемого для страниц, доступных каждому. Например, есть ли проблема, если сценарий, связанный с /admin/.* urls, будет home.py вместо admin.py?

?
application: myapp
version: 1
runtime: python
api_version: 1

handlers:
- url: /
  script: home.py

- url: /index\.html
  script: home.py

- url: /admin/.*
  script: admin.py
  login: admin

- url: /.*
  script: not_found.py

Спасибо,

David

Ответы [ 2 ]

5 голосов
/ 14 ноября 2010

Вы также можете использовать is_current_user_admin внутри кода обработки запросов для программной проверки.

2 голосов
/ 14 ноября 2010

По сути, у вас есть два варианта ... один из них - это то, что у вас уже есть, а именно: удерживать все страницы администратора под /admin и применять общую защиту на этом пути, что и сделал Адам.

Другой способ - сохранить одинаковые страницы для всех (скажем, вы хотите показать специальные функции для администраторов, такие как кнопки редактирования или инструменты модерации) и, как уже сказал Адам, и использовать is_current_user_admin() функция для определения того, что показать и сделать для администраторов.

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