codecamp

Sinatra 必要条件

推荐在 Ruby 1.8.7, 1.9.2, JRuby 或者 Rubinius 上安装 Sinatra。

下面的 Ruby 版本是官方支持的:

  • Ruby 1.8.6: 不推荐在 1.8.6 上安装 Sinatra,但是直到 Sinatra 1.3.0 发布才会放弃对它的支持。RDoc 和 CoffeScript 模板不被这个 Ruby 版本支持。1.8.6 在它的 Hash 实现中包含一个内存泄漏问题,该问题会被 1.1.1 版本之前的 Sinatra 引发。当前版本使用性能下降的代价排除了这个问题。你需要把 Rack 降级到 1.1.x,因为 Rack >= 1.2 不再支持 1.8.6。
  • Ruby 1.8.7: 1.8.7 被完全支持,但是,如果没有特别原因,我们推荐你升级到 1.9.2 或者切换到 JRuby 或者 Rubinius.
  • Ruby 1.9.2: 1.9.2 被支持而且推荐。注意 Radius 和 Markaby 模板并不和 1.9 兼容。不要使用 1.9.2p0, 它被已知会产生 segmentation faults.
  • Rubinius: Rubinius 被官方支持 (Rubinius >= 1.2.2),除了 Textile 模板。
  • JRuby: JRuby 被官方支持 (JRuby >= 1.5.6)。目前未知和第三方模板库有关的问题,但是,如果你选择了 JRuby,请查看一下 JRuby rack 处理器,因为 Thin web 服务器还没有在 JRuby 上获得支持。

我们也会时刻关注新的 Ruby 版本。

下面的 Ruby 实现没有被官方支持,但是已知可以运行 Sinatra:

JRuby 和 Rubinius 老版本 MacRuby Maglev IronRuby Ruby 1.9.0 and 1.9.1

不被官方支持的意思是,如果在不被支持的平台上有运行错误,我们假定不是我们的问题,而是平台的问题。

Sinatra 应该会运行在任何支持上述 Ruby 实现的操作系统。


Sinatra 命令行
Sinatra 通过 Bundler
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

Sinatra 配置

Sinatra 错误处理

Sinatra Sinatra::Base - 中间件,程序库和模块化应用

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }