标签: sinatra

在Sinatra中,生产环境和开发环境有什么区别?

我找不到详尽的答案。

如果我设置“生产”会发生什么?我看到视图文件不再“即时”读取,但是还有其他区别吗?

ruby development-environment production-environment sinatra

5
推荐指数
1
解决办法
621
查看次数

Rails 服务器和 Rails 控制台崩溃: require': 无法加载此类文件 --rack/protection (LoadError)

不确定为什么或如何发生这种情况,但突然间,在本地环境中运行良好的应用程序不再工作。

\n\n

我的本地开发环境是:\n MacOS Sierra 10.12.5

\n\n

应用程序使用:

\n\n
    \n
  • 导轨 5.2.2
  • \n
  • 红宝石2.5.0
  • \n
  • 雷本夫
  • \n
\n\n

每当我运行rails s或rails c时,应用程序都会启动并立即崩溃,并显示以下输出:

\n\n
\xe2\x9e\x9c  pwf-site git:(master) \xe2\x9c\x97 rails c\nTraceback (most recent call last):\n    67: from bin/rails:4:in `<main>\'\n    66: from /Users/herbyraynaud/code/personal/pwf-site/vendor/bundle/ruby/2.5.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:291:in `require\'\n    65: from /Users/herbyraynaud/code/personal/pwf-site/vendor/bundle/ruby/2.5.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:257:in `load_dependency\'\n    64: from /Users/herbyraynaud/code/personal/pwf-site/vendor/bundle/ruby/2.5.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:291:in `block in require\'\n    63: from /Users/herbyraynaud/code/personal/pwf-site/vendor/bundle/ruby/2.5.0/gems/bootsnap-1.3.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:29:in `require\'\n    62: from /Users/herbyraynaud/code/personal/pwf-site/vendor/bundle/ruby/2.5.0/gems/bootsnap-1.3.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:20:in `require_with_bootsnap_lfi\'\n    61: from /Users/herbyraynaud/code/personal/pwf-site/vendor/bundle/ruby/2.5.0/gems/bootsnap-1.3.2/lib/bootsnap/load_path_cache/loaded_features_index.rb:65:in `register\'\n    60: from /Users/herbyraynaud/code/personal/pwf-site/vendor/bundle/ruby/2.5.0/gems/bootsnap-1.3.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `block in require_with_bootsnap_lfi\'\n    59: from /Users/herbyraynaud/code/personal/pwf-site/vendor/bundle/ruby/2.5.0/gems/bootsnap-1.3.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `require\'\n    58: from /Users/herbyraynaud/code/personal/pwf-site/vendor/bundle/ruby/2.5.0/gems/railties-5.2.2/lib/rails/commands.rb:18:in `<main>\'\n    57: from /Users/herbyraynaud/code/personal/pwf-site/vendor/bundle/ruby/2.5.0/gems/railties-5.2.2/lib/rails/command.rb:46:in `invoke\'\n …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails sinatra bundler

5
推荐指数
1
解决办法
4204
查看次数

Ruby Sinatra 编译错误:找不到服务器处理程序(thin、puma、reel、HTTP、webrick)。(运行时错误)

我是 Ruby Sinatra 的新手,我尝试使用以下代码使用 Sinatra 构建一个简单的 Web 应用程序:

require 'rubygems'
require 'sinatra'

get '/firstapp' do
    "Welcome to my first Sinatra App !"
end
Run Code Online (Sandbox Code Playgroud)

当我尝试在 Windows 命令提示符下使用命令“ruby file.rb”运行它时,出现错误:

C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/sinatra-2.1.0/lib/sinatra/base.rb:1755:in `detect_rack_handler': Server handler (thin,puma,reel,HTTP,webrick) not found. (RuntimeError)                                             
from C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/sinatra-2.1.0/lib/sinatra/base.rb:1493:in `run!'                                                                                                                       
from C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/sinatra-2.1.0/lib/sinatra/main.rb:45:in `block in <module:Sinatra>'
Run Code Online (Sandbox Code Playgroud)

当我安装sinatra时,我忘记将路径设置为C:(ruby安装目录)\bin。我安装sinatra后已经设置了路径

我不知道发生了什么事。有人可以帮我弄这个吗?

ruby webserver rubygems web-applications sinatra

5
推荐指数
2
解决办法
6981
查看次数

Sinatra PUT方法不起作用?

出于某种原因,我的"PUT"方法没有被Sinatra使用这个html捕获.有人能帮我发现错误吗?当我在我的控制器中使用"post"动作时,它的工作方式与预期的一样......

<form method="post" action="/proposals/<%=@proposal.id%>/addItem">
<input type="hidden" name="_method" value="put"/>
  <div>
  <label for="item_id">Item list</label>
<select title="Item ID" id="item_id" name='item_id'>
  <%@items.each do |item|%>
    <option value="<%=item.id%>"><%=item.name%></option>
  <%end%>
</select>                                   
<input type="submit" value="Add"/></div>
<label for="new_item_name">Create new item</label>
<input type="text" id="new_item_name" name="new_item_name" />
<input type="submit" value="Create"/>
</form>
Run Code Online (Sandbox Code Playgroud)

ruby sinatra

4
推荐指数
2
解决办法
5978
查看次数

在事件机器中具有薄和彩虹的异步sinatra.为什么瘦更快?

我刚刚使用eventmachine 启动了薄与雨之间的异步sinatra基准测试.

有人可以解释为什么Thin比使用eventmachine和四个work_processes的Rainbows更快?我也尝试了一个work_processes但结果没有改变.瘦还是更快.

提前感谢Francesco

ruby asynchronous thin sinatra eventmachine

4
推荐指数
1
解决办法
2169
查看次数

`remove_const'中的Ruby Sinatra Hello World错误:常量URI :: WFKV_未定义(NameError)

只是试图让简单的http服务器运行,并且没有关于ruby的线索

/usr/local/lib/ruby/gems/1.9.1/gems/rack-1.3.5/lib/rack/backports/uri/common_192.rb:53:in `remove_const': constant URI::WFKV_ not defined (NameError)
    from /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.3.5/lib/rack/backports/uri/common_192.rb:53:in `<module:URI>'
    from /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.3.5/lib/rack/backports/uri/common_192.rb:19:in `<top (required)>'
    from /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.3.5/lib/rack/utils.rb:12:in `require'
    from /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.3.5/lib/rack/utils.rb:12:in `<top (required)>'
    from /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.3.5/lib/rack/request.rb:1:in `require'
    from /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.3.5/lib/rack/request.rb:1:in `<top (required)>'
    from /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.3.5/lib/rack/showexceptions.rb:3:in `require'
    from /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.3.5/lib/rack/showexceptions.rb:3:in `<top (required)>'
    from /usr/local/lib/ruby/gems/1.9.1/gems/sinatra-1.3.1/lib/sinatra/showexceptions.rb:1:in `require'
    from /usr/local/lib/ruby/gems/1.9.1/gems/sinatra-1.3.1/lib/sinatra/showexceptions.rb:1:in `<top (required)>'
    from /usr/local/lib/ruby/gems/1.9.1/gems/sinatra-1.3.1/lib/sinatra/base.rb:12:in `require'
    from /usr/local/lib/ruby/gems/1.9.1/gems/sinatra-1.3.1/lib/sinatra/base.rb:12:in `<top (required)>'
    from /usr/local/lib/ruby/gems/1.9.1/gems/sinatra-1.3.1/lib/sinatra.rb:4:in `require'
    from /usr/local/lib/ruby/gems/1.9.1/gems/sinatra-1.3.1/lib/sinatra.rb:4:in `<top (required)>'
    from http.rb:1:in `require'
    from http.rb:1:in `<main>'
Run Code Online (Sandbox Code Playgroud)

这是我在centos上的ruby版本 ruby 1.9.1p376 (2009-12-07 revision 26041) [x86_64-linux]

任何帮助将非常感激

ruby sinatra

4
推荐指数
1
解决办法
1631
查看次数

当我尝试在我的sinatra应用程序中添加机架式闪光灯时,它会停止工作

我已经使用Rack::Flash了一段时间在我的Sinatra应用程序中显示响应的闪光通知.自从我升级到Sinatra 1.3.2后,应用程序崩溃,每当我向服务器发出请求时都会记录以下内容:

!! Unexpected error while processing request: undefined method `<<' for nil:NilClass
Run Code Online (Sandbox Code Playgroud)

简化的代码如下所示:

require 'sinatra'
require 'rack-flash'

enable :sessions
use Rack::Flash

get "/" do
  "Hello World"
end
Run Code Online (Sandbox Code Playgroud)

知道为什么会发生这种情况吗?

ruby rack sinatra

4
推荐指数
1
解决办法
1814
查看次数

以Sinatra格式格式化日期字段

我在Ruby/Sinatra中有一个表单,其中显示了一个日期字段:

%input{:type => "date", :name => "due_date", :value => @m.due_date}
Run Code Online (Sandbox Code Playgroud)

在屏幕上,表单字段显示为day-month-year(例如23-11-2012).
我希望将字段内容显示为year-month-day(例如2012-11-23).

建议?

html ruby forms date sinatra

4
推荐指数
1
解决办法
1036
查看次数

无法在ERB文件,Sinatra上添加CSS

我正在尝试将Twitter Bootstrap CSS添加到ERB文件并与Sinatra一起运行,但CSS不会显示.

我的代码:

<link rel="stylesheet" href="/lib/bootstrap/css/bootstrap.min.css">
Run Code Online (Sandbox Code Playgroud)

我的文件夹结构在代码中是相同的.

我已经试过href="lib/...href="../lib/...不工作

有解决方案吗

html css erb sinatra

4
推荐指数
1
解决办法
4095
查看次数

在使用erubis的sinatra中,默认设置escape_html为true。有时变得无法逃脱

在西纳特拉,使用erubis,默认设置escape_htmltrue

但是有时我想取消转义,因为,我不想添加太多的escape_html。不要重复自己。:)

helpers:

def raw(string)
  CGI::unescape_html(string)
end
Run Code Online (Sandbox Code Playgroud)

views:

<div class="body">
  <%= raw "<h1>Thanks for help...</h1>" %>
</div>
Run Code Online (Sandbox Code Playgroud)

不起作用。

ruby erb sinatra erubis

4
推荐指数
2
解决办法
2402
查看次数