2

对于使用 ExtJS 4.1 构建在 Rails (3.1.8) 之上的应用程序,我们有以下文件布局:

app/
  assets/
  javascript/
    application.coffee
    WID/
      Lots of coffeescript files and folders.
public/
  extjs/
    ext-all-debug-w-comments.js and the whole ExtJS framework.

我们的应用程序严重依赖 Ext 加载器 (Ext.Require) 来根据用户权限/允许的模块动态加载文件。我们希望尽可能地保留此功能,因此仅从服务器请求所需的文件。带宽并不是真正的问题,因为应用程序是基于 Intranet 的(在 LAN 上)。

在开发环境中,一切运行顺利。然而,在生产环境中,我们遇到了问题。看起来“rake assets:precompile”任务正在将所有文件连接到一个 application.js 文件中,然后在访问我们的应用程序时,Ext 加载程序抱怨它找不到单个文件(因为 assets/WID/... /file.js 没有由 rails 服务器提供服务)。

所以现在,我不确定最好采取什么措施......有没有人能够帮助我们成功地完成 Rails + ExtJS 生产设置,充分利用资产管道?

谢谢,

皮埃尔。

4

1 回答 1

0

我认为当您处于开发环境中时,您应该将您的 javascripts(通常是所有资产)从您的设备中public移入。vendor/assets/javascripts通过这种方式,资产管道开始负责。

编辑:您可以考虑将清单文件恢复为application.js,而不是application.coffee. 通常,重命名这些特殊文件是一个坏主意:application.cssapplication.js。如果您要添加一些咖啡脚本,只需创建一个新文件并将其放在资产目录中。

于 2013-02-19T20:18:11.793 回答