[sinatra] Sinatra再入门

原文URL:http://www.rubycc.com/bbs/topic_detail/86

1.基础代码app.rb

require 'rubygems'
require 'sinatra/base'
 
class App < Sinatra::Base
  get '/' do
    "Hello, World"
  end
end

注: ruby版本小于1.9, 必须在第一行加 require 'rubygems'

看清楚第二行 require 'sinatra/base'

这是一种基于类的router定义方式。

2.URL 参数

下面的代码使用haml模板,安装方法:gem install haml

# encoding: utf-8
require 'rubygems'
require 'sinatra/base'
 
require 'haml'
 
class App < Sinatra::Base
  enable :inline_templates
  get '/' do
    @title = "Top"
    haml "My Way"
  end
 
  get '/name/:name' do
    @name = params[:name]
    @title = "Song for #{@name}"
    haml "#{@name}'s Way"
  end
end
 
App.run!
 
__END__
 
@@ layout
!!! 5
%html
 %head
  %title= @title
 %body
  %h1= @title
  %div= yield

这是内联模板的一种用法。其中的代码: enable :inline_templates允许了内联模板的功能。

定义的@title,可以在模板中用“@title”的方式引用。

定义的router '/name/:name',可以用params[:name]获取URL中的参数。

log的功能可以追加。只要在刚才的“enable :inline_templates”下方追加一行即可。

enable :logging

 

后面的一连串功能,我小白,还不知道有什么用,所以先不写下去了



 

 

转载于:https://www.cnblogs.com/lizunicon/p/3602047.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值