我决定在 Google AppEngine 上实现一个博客系统。但:
- 我不想在我的博客上添加登录按钮。
- 我不想提供手动输入的 url 来登录。
但我仍然想在网上做一些管理事情,而且只为我自己做,例如发布、编辑、删除等。
有什么聪明的方法来实现这个吗?
我决定在 Google AppEngine 上实现一个博客系统。但:
但我仍然想在网上做一些管理事情,而且只为我自己做,例如发布、编辑、删除等。
有什么聪明的方法来实现这个吗?
您可以将组件添加到仅在您是管理员时才会呈现的网页模板。
例如,在您的 HTML 模板中,如果您有类似的内容,它只会在 admin_bool 为 True 时呈现内容。所以你可以在里面放一个表格等,只有你会看到它。
{% if admin_bool %}
# only show this if you are an admin
{% endif %}
因此,如果您碰巧使用 GAE 用户服务,您可以这样做:
from google.appengine.api import users
user = users.get_current_user()
if user:
print "Welcome, %s!" % user.nickname()
if users.is_current_user_admin():
admin_bool = True
并将 admin_bool 传递给您的模板,并且仅当当前用户是管理员时才会呈现。
https://developers.google.com/appengine/docs/python/users/adminusers
我看不出有任何理由不提供一个根本没有在任何地方显示的秘密 URL,然后只是为您的管理页面提供app.yaml 中所需的管理员,如下所示:
- url: /admin/.*
script: admin.app
login: admin
但是,如果您真的真的不想提供任何东西,您仍然可以这样做。不要忘记,您可以在 Google App Engine 上为同一个应用程序部署多达 10 个不同的版本,并使用可以像这样访问的唯一 URL:
http://version-name.application-name.appspot.com
因此,您可以创建一个完全不同的应用程序来管理您的站点和另一个应用程序来展示它。将它们部署在同一个应用程序上,并将正确的应用程序作为默认版本。
提供显示博客管理功能的登录按钮的不同页面或 URL。例如,博客可以托管在 wordpress.com 上,管理员可以登录,但通过不公开登录按钮的不同 URL 访问。
您可以使用键盘快捷键。或者一个看不见的按钮。也许是一种姿态。