Cyr*_* N. 6 templates static-files
在我的一个项目中,我的用户将拥有我网站的专用部分({username} .example.org).在该子域中,我计划允许他们轻松地更改设计.我看了一些已经做过的在线网站,比如Tumblr,Posterous和Shopify.
关于这个应用程序的语言,我用Django开始,我成功实现了"基于url名称的模板呈现,默认为回退"(http://someuser.example.com将在templates/someuser /中加载模板)*或在模板/通用/*中如果没有在第一个中找到).但是如果它们更适合我的需要,我可以将它导出到PHP或Play!Framework.
使用的模板引擎是Jinja2,因为它像Django模板引擎一样简单,易于学习和安全(没有Python coode可以(通常应该!)执行).
以下是我发现的每种解决方案的优缺点.我真的很感激你对此的看法以及你会采取哪种方式,为什么.谢谢.
注意:用户将对HTML/CSS有很好的了解.
改变变量(如标题颜色等)
优点:
缺点:
只上传CSS
优点:
缺点:
允许用户编辑模板(存储在数据库中)
优点:
缺点:
允许用户编辑模板(存储在文件中)
优点:
缺点:
另外,我遇到的问题是如何处理静态文件(图像,css,js):我看不到如何在Apache(或NGinx)中定义一个虚拟主机,它会请求数据库查看哪个用户属于这个网址.
谢谢你的帮助,我感谢!
好吧,我会根据我所做的和我的研究来回答自己。
正如史蒂夫提到的,您必须非常小心地让用户自定义页面布局。
必须好好评估风险!
就我而言,让用户更改完整的 HTML/CSS/JS 是可能的,就像Posterous或Tumblr所做的那样。
风险是:
如果这两个条件得到很好的评估,选项“允许用户编辑模板(存储在数据库中) ”是一个很好的解决方案。
但是,如果您担心数据库可能有太多点击,则最后一个解决方案,又名“允许用户编辑模板(存储在文件中) ”,可能是可能的,如果:
嗯,我想我已经涵盖了整个问题。我可能遗漏了一些要点,如果是这样,请添加评论或新帖子,我会完成答案。
| 归档时间: |
|
| 查看次数: |
905 次 |
| 最近记录: |