【问题标题】:Sinatra Framework, handsontableSinatra 框架,可动手操作
【发布时间】:2014-08-15 08:27:15
【问题描述】:

有谁知道是否可以在 Sinatra 框架中使用可动手做的插件? rubygems.org 上的 Gem 仅提及 Rails,因此我不确定该插件是否仅适用于/旨在用于 Rails。

【问题讨论】:

  • 它需要它看起来的资产管道。无论如何 gem 已经过时了,你最好手动添加 js/css 文件。
  • 你能提供一个简单的例子吗, berry newb 这里。 :) 你的意思是在 html/haml 中链接 js 和 css 的 src 吗?我应该真正下载源代码并复制到我的工作目录并在其中指向它们还是只是通过网络链接?

标签: ruby-on-rails sinatra handsontable


【解决方案1】:

我会推荐与@iceman 相同的内容。直接使用js和css即可。

大多数时候,我对 js 和 css 的两个文件夹中的文件进行排序,你最终会得到类似的结果:

yourappolder
   -public
     -js
        -handsontable.full.js
     -css
        -handsontable.full.css

这个文件夹被命名为 public 是约定俗成的。来自doc

一个字符串,指定应该提供静态文件的目录。默认情况下,这被假定为根目录中名为“public”的目录(参见 :root 设置)。您可以使用以下命令显式设置公共目录:

set :public_folder, '/var/www'
set :public_folder, Proc.new { File.join(root, "static") }

这些文件现在可以直接包含在您的布局文件中

!!!
%html
  %head
    %title My title
    %link(rel="stylesheet" href="/css/handsontable.full.css")
    %script{:type => "text/javascript", :src => "/js/handsontable.full.js"}
  %body
    = yield

或者您可以在需要文件的地方构建视图。并在您的布局中呈现这些视图。 (它增加了一点结构)

回答你的问题:

我应该实际下载源代码并将其复制到我的工作目录并在其中指向它们还是仅通过网络链接?

有一份使用过的文件的副本,以备不时之需。并使用网络链接,因为大多数时候它对您的用户来说更快。 (他们有 CDN)

如果您建立一个内部网站或想自己托管 css/js,请查看sinatra-assetpack,它可以合并和缩小您的 css/js 以加快下载速度。

更新: 有人告诉我,如果没有 jquery,handsontable 工作就不行,所以我更新了我的答案。如果您使用旧版本的handsontable,您可能应该加载jquery javascript 文件(以及在handsontable js 文件之前)。

【讨论】:

  • 哦......那么这样做......这真的适用于任何框架还是只适用于Rails?我认为它只是 js 和 css,所以应该真正适用于任何支持样式和 js 的东西。只是想清楚一点。
  • “是否真的适用于任何框架仍然或仅适用于 Rails”不确定“那个”是什么意思,但如果你的意思是可动手做,肯定是。这种类型的铁轨宝石只是让您的生活更轻松的臃肿帮手。
  • 抱歉,“那个”是指手动链接到 /css/jquery.handsontable.full 和 /js/jquery/min.js、/js/jquery/handsontable.js 的解决方案.说得通。我可以发誓这就是我尝试过的,但我没有在我的快速网站上看到任何表格。我将不得不发布我的代码以显示我尝试过的内容(类似于您提供的解决方案)。稍后我会用我的代码回到这里。
  • 注意,Handsontable 已经淘汰了使用 jquery,它现在只使用原生 DOM。因此,它现在需要两个文件 [不是三个]。例如 handontable.full.js & handontable.full.css
猜你喜欢
  • 1970-01-01
  • 2011-03-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多