rails应用中的用户定义主题:如何存储资产

Top*_*opo 6 assets ruby-on-rails asset-pipeline

我正在构建一个应用程序,允许用户上传他们的主题以自定义方式显示数据.每个主题应包括所有必要的资源,如html模板(使用Liquid),css文件,javascripts和图像.结果应该与Shopify允许对客户做的非常相似.

我正在努力为用户找到提交主题的最佳方式,并为应用程序提供服务.具体来说,最佳做法是什么:

  • 为他们服务回访者.虽然使用自定义商店提供html/liquid文件似乎很容易,但我很困惑如何引用和服务1)主题所需的图像,2)主题所需的css文件,3)css所需的图像文件
  • 相应地存储不同的资产类型(例如,数据库与上传的文件和上传文件的文件夹结构)
  • 用户可以通过Web界面编辑上传的模板

提前致谢.

Ric*_*lse 3

资产管道主要设计用于为部署时预编译的固定资产提供服务。这样做会产生相当多的开销,而且我认为它不适合提供动态可编辑内容。

为了解决这个问题,我将列出系统上所有资产类型(用户和静态)的矩阵以及每种资产类型的选项。

在每个写入可能的存储选项旁边,例如原始文件系统、文件系统管道、数据库。然后计算出每种方法的优缺点以及每种方法的大致复杂性。

我不认为为此使用管道是最佳实践,除非您真的非常关心前端性能;要让它继续下去需要做很多工作。

数据库/文件系统的混合可能是最佳的。