【问题标题】:Is there a standard way to create a 'preview' mode for a website?是否有为网站创建“预览”模式的标准方法?
【发布时间】:2011-08-31 22:13:38
【问题描述】:

我想实施“预览”模式,向我的用户展示新功能(类似于 Google 和许多其他网站的做法)。

我想知道这样做是否有“行业标准”或最佳实践。

更具体地说,假设我有两个模板: template A 是旧站点,template B 是新站点。两个模板/视图都可以访问同一个数据库...我只是希望 UI 有所不同。

只有一两个页面,这很容易,但如果我有一个包含数百个模板的网站,我不想输入条件代码来根据用户正确呈现旧/新模板' 偏好。

如果有帮助,我将使用 Django 进行此操作。

【问题讨论】:

    标签: django templates preview


    【解决方案1】:

    我是一名 UI 开发人员,我一直被要求这样做。有多种方法可以在实时站点上同时运行“模板”。但是,我建议不要这样做。在生产站点进行开发运行可能会导致致命错误,并且不值得因为一个愚蠢的错误而关闭两个站点的心痛。而且无论我被告知多少次“我只从事开发工作并将经过测试的更改推送到实时服务器”,我都知道总有一位负责人会告诉您“在会议之前快速进行这一更改“这导致了众所周知的爆炸。随之而来的愤怒永远不会有趣。

    对于我公司的所有发展,我们遵循了三种路径。对于测试,在数据库中有一个带有虚假数据的专用测试服务器,可以随意使用 - 并随意炸毁。对于生产测试,有一个与实时数据挂钩的沙盒服务器。最后,有一个生产服务器,只有经过适当测试的生产代码。我们确实免费共享沙盒服务器的链接,它只是其他服务器的域扩展......在 Apache 或您选择的服务器中进行简单设置。结合适当的版本和生产管理,这是一个很好的解决方案,即使在我们的小商店中也是如此——两年来,它从未让我们失望过。

    【讨论】:

    • 很棒的答案!很高兴知道“现实世界”是如何做到的,因为我只是一个“周末”程序员。
    【解决方案2】:

    查看我对这个问题的回答:What/Where to modify django-registration to use with mobile broswers

    这解释了如何为移动浏览器提供完全不同的模板目录,这与您正在做的非常相似。

    您可以有两个模板目录,旧的和新的,并使用类似的技巧根据配置文件甚至会话变量设置 TEMPLATE_DIRS。您还可以将 TEMPLATE_DIRS 重置限制为有限数量的路径等。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-13
      • 2011-06-02
      • 2014-12-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多