当前位置:首页 > 网站旧栏目 > 学习园地 > 设计软件教程 > 简单sinatra例子

简单sinatra例子
2010-01-13 23:01:18  作者:  来源:
运行方式:首先安装sinatra
gem install sinatra
在命令行 ruby myapp.rb -p 3000
访问 http://localhost:3000
http://localhost:3000/hello/my_world查看效果
ruby myapp.rb --help 可以看到命令行参数
Ruby代码 复制代码
  1. require 'rubygems'  
  2. require 'sinatra'  
  3.   
  4. get '/' do  
  5.   'Hello world!'  
  6. end  
  7.   
  8. get '/hello/:name' do  
  9.   erb :index  
  10. end  
  11.   
  12. __END__   
  13. @@ layout   
  14. <html>   
  15.   <head><title>sinatra sample</title></head>   
  16.   <body>   
  17.     <%= yield %>   
  18.   </body>   
  19. </html>   
  20.   
  21. @@ index   
  22. <div class="content">Hello <%=params[:name]%></div>  

rackup配置脚本
Ruby代码 复制代码
  1. require 'sample'  
  2. run Sinatra::Application  

运行 rackup sinatra.ru -p 3000 也可以看到同样效果
评论 共 2 条 发表评论
2 楼 花花公子 2009-05-23 22:57 引用
CharlesCui 写道

Ruby代码 ./sinatra.rb:5:&nbsp;undefined&nbsp;method&nbsp;`get'&nbsp;for&nbsp;main:Object&nbsp;(NoMethodError)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;from&nbsp;d:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in&nbsp;`gem_original_require'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;from&nbsp;d:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in&nbsp;`require'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;from&nbsp;sinatra.rb:3&nbsp;&nbsp;./sinatra.rb:5: undefined method `get' for main:Object (NoMethodError)
from d:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from d:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from sinatra.rb:3怎么会这样?上面那个是官方的例子。
 

你为什么自己的程序还要叫sinatra呢?自己require自己了,没有加载sinatra成功。
1 楼 CharlesCui 2009-05-23 22:46 引用
Ruby代码 复制代码
  1. ./sinatra.rb:5: undefined method `get' for main:Object (NoMethodError)   
  2.     from d:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'   
  3.     from d:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'   
  4.     from sinatra.rb:3 

安徽新华电脑学校专业职业规划师为你提供更多帮助【在线咨询