термос просто Django, як система управління користувачами написано в Python і призначений для використання з bottle.py, SQLAlchemy і repoze.what.
Приклад
з пляшки маршрутом імпорту, бігати, додатки, GET, POST, перервати, запитів налагодження
з шаблону імпорту пляшки, перенаправляти
від repoze.what.plugins.quickstart setup_sql_auth імпорту
від thermos.auth.models імпорту Користувачеві, Групі дозволу ThermosBase, переклади
від SQLAlchemy імпорту create_engine
від sqlalchemy.orm sessionmaker імпорту
реєстрація імпорт, SYS
імпорт OS
імпорт pprint
get ('/')
Def корінь ():
І NBSP; особистість = request.environ.get ('repoze.who.identity')
І NBSP; якщо особистість не None:
І NBSP; повернення "
Ви не увійшли в Ім'я користувача або пароль невірно Ви увійшли в Тепер ви вийшли з Вимоги
І NBSP; користувач = identity.get ('repoze.who.userid')
І NBSP; повернення ". Ви увійшли як% S
route ('/ Логін »)
Def Ввійти ():
І NBSP; came_from = request.params.get ("came_from") або "/"
І NBSP; повернення шаблон ("Вхід", came_from = came_from)
route ('/ welcome_back')
Def post_login ():
І NBSP; особистість = request.environ.get ('repoze.who.identity')
І NBSP; якщо особистість не None:
І NBSP; повернення ".
І NBSP; came_from = request.params.get ("came_from") або "/"
І NBSP; повернення "
route ('/ see_you_later')
Def post_login ():
І NBSP; повернення "
Def add_auth (додаток, сесії):
І NBSP; повернення setup_sql_auth (додаток = додаток, user_class = Користувач, group_class = Група,
І NBSP; permission_class = Введено, dbsession = сесія,
І NBSP; post_login_url = '/ welcome_back', post_logout_url = '/ see_you_later',
І NBSP; переклади = переклад)
І NBSP;
НЕ log_stream = Немає
Якщо os.environ.get ("WHO_LOG '):
І NBSP; log_stream = sys.stdout
двигун = create_engine ('SQLite: ///: пам'ять:', луна = False)
ThermosBase.metadata.create_all (двигун)
Засідання = sessionmaker (BIND = двигун)
сесія = Сесія ()
проміжного = add_auth (додаток (), сесія)
адміністраторів = групах (u'admins »)
session.add (адміни)
Адмін = Користувач (u'admin ')
admin.set_password ("адміністрація")
admin.groups.append (адміни)
session.add (Admin)
session.commit ()
Run (додаток = проміжного, провідний = '0.0.0.0', порт = 8080, перевантажувач = True)
Коментар не знайдено