跳转到主要内容

TurboGears 扩展,提供增强的闪存消息显示功能。

项目描述

此软件包提供 turbogears.flash() 函数的增强版本,为用户提供更美观的消息框,这些消息框可以根据消息的状态改变外观。启用JavaScript后,消息可以在超时后淡出或由用户通过鼠标点击来关闭。

这是通过在目标页面的模板中将消息进行JSON编码和解码来实现的。这是完全自动处理的,程序员只需使用功能接口即可,例如 fancyflash.error("Duh!")

此外,您还可以通过简单的JavaScript函数调用来显示消息,例如在处理 loadJSONDoc 的回调函数中处理AJAX调用的结果时。

更多信息请参阅 fancyflash 软件包的源代码,epydoc生成的 API 文档FancyFlashExample 应用程序。

安装

要从Cheeseshop安装 TurboFancyFlash,请使用 easy_install

[sudo] easy_install TurboFancyFlash

这需要安装setuptools包。如果您还没有安装,请下载ez_setup.py脚本并运行它以安装setuptools。

用法

控制器(controllers.py

# Import TurboGears
from turbogears import controllers, expose, redirect, validate, validators

# Import fancyflash package
import fancyflash as ff

# Set the default timeout for message box display
ff.set_default_flash_timeout(5)

# Let FancyFlashWidget be included on every page
ff.register_flash_widget()

class FlashTestController(controllers.Controller):

    @expose('templates.welcome')
    def index(self, timeout=0):
        return {}

    @expose()
    def info(self):
        ff.info("Hello TurboGears!")
        redirect('/')

    @expose()
    @validate(validators=dict(timeout=validators.Int))
    def success(self, timeout=0, tg_errors=None):
        ff.success("Hello TurboGears!", timeout)
        redirect('/')

    @expose()
    @validate(validators=dict(status=validators.String))
    def message(self, status="info", tg_errors=None):
        ff.statusmessage("Hello TurboGears!", status)
        redirect('/')

主模板(master.kid

<div id="main_content">
  <div py:replace="tg_fancyflashwidget(tg_flash)">Status message
    appears here</div>

  <div py:replace="[item.text]+item[:]"/>

  ...
</div>

致谢

此小部件的想法基于Lee McFadden的博客文章

待办事项

  • 在IE中测试

  • 在Safari中测试不透明度

如果有时间的话

  • 添加对话框位置的参数(通过动态编写CSS实现)。

  • 非Gecko浏览器的圆角框

  • 添加AJAX小部件,以显示loadJSONDoc的结果作为时尚的状态消息。

项目详情


下载文件

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

源代码分发

TurboFancyFlash-0.1a.zip (164.2 KB 查看哈希值

上传时间: 源代码

TurboFancyFlash-0.1a.tar.bz2 (107.9 KB 查看哈希值

上传时间: 源代码

构建分发

TurboFancyFlash-0.1a-py2.5.egg (94.0 KB 查看哈希值

上传时间: 源代码

由以下机构支持

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