Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django 是否有创建';预览';网站的模式?_Django_Templates_Preview - Fatal编程技术网

Django 是否有创建';预览';网站的模式?

Django 是否有创建';预览';网站的模式?,django,templates,preview,Django,Templates,Preview,我想实现一种“预览”模式,向我的用户展示新功能(类似于谷歌和许多其他网站的做法) 我想知道是否有这样做的“行业标准”或最佳实践 更具体地说,假设我有两个模板: 模板A是外观陈旧的站点,模板B是外观新颖的站点。两个模板/视图都可以访问同一个数据库…我只是希望UI不同 只需要一到两个页面,这就足够简单了,但是如果我有一个包含数百个模板的站点,我不希望必须输入条件代码来根据用户的偏好正确呈现旧/新模板 如果有帮助的话,我正在和Django一起做这件事。查看我对这个问题的回答: 这解释了如何为移动浏览器

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

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

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

只需要一到两个页面,这就足够简单了,但是如果我有一个包含数百个模板的站点,我不希望必须输入条件代码来根据用户的偏好正确呈现旧/新模板


如果有帮助的话,我正在和Django一起做这件事。

查看我对这个问题的回答:

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


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

查看我对这个问题的回答:

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


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

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


在我公司的发展过程中,我们遵循了三条道路。对于测试,有一个专用的测试服务器,数据库中有伪造的数据,可以自由地对这些数据进行模糊处理,也可以随意放大。对于生产测试,有一个连接到实时数据的沙盒服务器。最后,还有一个只经过适当测试的生产服务器,即生产代码。我们免费共享到沙盒服务器的链接,它只是其他服务器的一个域扩展…在Apache或您选择的服务器中进行简单的设置。结合适当的版本和生产管理,这是一个很好的解决方案,即使是在我们的小商店里——在两年内,它从未让我们失望过。

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


在我公司的发展过程中,我们遵循了三条道路。对于测试,有一个专用的测试服务器,数据库中有伪造的数据,可以自由地对这些数据进行模糊处理,也可以随意放大。对于生产测试,有一个连接到实时数据的沙盒服务器。最后,还有一个只经过适当测试的生产服务器,即生产代码。我们免费共享到沙盒服务器的链接,它只是其他服务器的一个域扩展…在Apache或您选择的服务器中进行简单的设置。结合正确的版本和生产管理,这是一个伟大的解决方案,即使在我们的小商店里——两年内,它从未让我们失望过。

真棒的答案!很高兴知道“真实世界”是如何做到的,因为我只是一个“周末”程序员。回答得真棒!很高兴知道“真实世界”是如何做到的,因为我只是一个“周末”程序员。