跳转到主要内容

适用于TurboGears2的插件式注册应用程序,具有用于细粒度定制的钩子

项目描述

https://badge.fury.io/py/tgapp-registration.svg https://travis-ci.org/axant/tgapp-registration.svg?branch=master https://coveralls.io/repos/github/axant/tgapp-registration/badge.svg?branch=master

关于TGApp-Registration

注册是适用于TurboGears2的插件式注册应用程序。默认情况下,它将使用快速入门TurboGears用户模型,但提供了一组钩子,可用于更改注册表单和大多数注册方面。

注册目前支持SQLAlchemy和MongoDB作为数据库存储。

注册支持Turbomail和tgext.mailer发送电子邮件。

安装

tgapp-registration可以从pypi或bitbucket安装

pip install tgapp-registration

对大多数用户来说应该都能正常工作

如果您想使用Turbomail作为发送者,请从pypi安装它

pip install turbomail

如果您想使用tgext.mailer作为发送者,请从pypi或bitbucket安装

pip install tgext.mailer

插入注册

在您的应用程序config/app_cfg.py中导入plug

from tgext.pluggable import plug

然后,在文件末尾调用带有注册的plug

plug(base_config, 'registration')

如果您使用tgext.mailer,则需要插入它

plug(base_config, 'tgext.mailer')

您将能够访问注册过程,地址为http://localhost:8080/registration

一些选项可以在您的应用程序的 .ini 配置文件中设置。至少需要一个选项才能使激活邮件正常工作。

  • registration.email_sender -> 发送邮件的地址(例如 no-repy@domain.com

如果您使用 tgext.mailer,则需要设置一些配置,有关可用选项,请查看此处: https://github.com/amol-/tgext.mailer

如果您既不使用 TurboMail 也不使用 tgext.mailer,则必须设置一些额外的配置选项,才能使激活邮件工作。

  • registration.smtp_host -> 用于发送邮件的 SMTP 服务器

  • registration.smtp_login -> 在 SMTP 服务器上进行身份验证的登录名

  • registration.smtp_passwd -> 在 SMTP 服务器上进行身份验证的密码

插件选项

在插入 tgapp-registration 时,可以将以下选项传递给插件调用

  • registration.form -> 用于注册表单的表单类的完整 Python 路径。默认情况下使用 registration.lib.forms.RegistrationForm

可用钩子

注册功能暴露了一些钩子来配置其行为,可用于 TurboGears2 的 register_hook 的钩子有:

  • registration.before_registration_form(arguments) -> 在渲染表单之前运行。可以用来插入预处理条件,例如仅允许受邀用户注册。您可以通过向 arguments 中插入数据来填写表单,您可能希望将一个 json 序列化的字典放入 arguments['extra'] 中,该字典是一个隐藏字段

  • registration.before_registration(submitted_values) -> 在表单提交后运行。可以用来在它们被使用之前更改表单提交的值

  • registration.after_registration(registration, submitted_values) -> 在表单提交后运行。可以用来存储表单发送的任何数据,该数据注册模型不支持。

  • registration.on_complete(registration, email_data) -> 在注册完成后、发送激活邮件之前运行,可以用来更改发送的邮件。

  • registration.before_activation(registration, user) -> 在激活之前运行,在创建用户并将注册设置为活动状态之前运行

  • registration.after_activation(registration, user) -> 在创建用户后运行,可以用来在注册完成后将用户重定向到不同的页面。

公开模板

注册所使用的模板,可以使用 tgext.pluggable.replace_template 替换,包括:

  • registration.templates.register

  • registration.templates.complete

Alembic 迁移

tgapp-registration 版本 0.9.6 在 sqlalchemy 模型中包含了 extras 字段。要从早期版本升级,您需要运行

gearbox migrate-pluggable -c your_config.ini registration upgrade

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。

源分发

tgapp-registration-0.9.6.tar.gz (20.2 kB 查看哈希值)

上传时间

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面