Ruby on Rails Tutorial 学习笔记 --第三章 基本静态的页面

-1.

[ruby]  view plain copy
  1. $ rails generate rspec:install  
  2. $ rails generate integration_test static_pages  



0.

[ruby]  view plain copy
  1. $ rails generate controller FooBars baz quux  
  2. $ rails destroy  controller FooBars baz quux  
[ruby]  view plain copy
  1. $ rails generate model Foo bar:string baz:integer  
  2. $ rails destroy model Foo  
[ruby]  view plain copy
  1. $ rake db:migrate  
  2. $ rake db:rollback  
  3. $ rake db:migrate VERSION=0  



1.设置一下让 Rails 使用 RSpec 而不用 Test::Unit

[ruby]  view plain copy
  1. rails generate rspec:install  

2.通过命令行创建两个动作

[ruby]  view plain copy
  1. rails generate controller StaticPages home help --no-test-framework  

3.

[ruby]  view plain copy
  1. $ rails generate controller FooBars baz quux  
  2. $ rails destroy  controller FooBars baz quux  

[ruby]  view plain copy
  1. $ rails generate model Foo bar:string baz:integer  
  2. $ rails destroy model Foo  

[ruby]  view plain copy
  1. $ rake db:migrate  
  2. $ rake db:rollback  

[ruby]  view plain copy
  1. $ rake db:migrate VERSION=0  

4. Rails 在 StaticPages 控制器中寻找 home 动作,然后执行该动作,再渲染相应的视图。在本例中,home 动作是空的,所以访问 /static pages/home 后只会渲染视图。


5.在测试驱动开发中,我们先写一个会失败的测试,在很多测试工具中会将其显示为红色。然后编写代码让测试通过,显示为绿色。

最后,如果需要的话,我们还会重构代码,改变实现的方式(例如消除代码重复)但不改变功能。这样的开发过程叫做“遇红,变绿,重构(Red, Green, Refactor)”。


6.

生成测试代码

[ruby]  view plain copy
  1. rails generate integration_test static_pages  
运行测试代码

[ruby]  view plain copy
  1. bundle exec rspec spec/requests/static_pages_spec.rb  


7.动态网页

通过 <% ... %> 调用 Rails 中的 provide 函数,然后将字符串 'Home' 赋给 :title

然后,在标题中,我们使用类似的符号 <%= ... %> 通过 Ruby 的 yield 函数将标题插入模板中

[ruby]  view plain copy
  1. <% provide(:title'Home') %>  
  2. <!DOCTYPE html>  
  3. <html>  
  4.   <head>  
  5.     <title>Ruby on Rails Tutorial Sample App | <%= yield(:title) %></title>  
  6.   </head>  
  7.   <body>  
  8.     <h1>Sample App</h1>  
  9.     <p>  
  10.       This is the home page for the  
  11.       <a href="http://railstutorial.org/">Ruby on Rails Tutorial</a>  
  12.       sample application.  
  13.     </p>  
  14.   </body>  
  15. </html>  

<% ... %>   执行 其中的代码,

<%= ... %> 也会执行其中的代码,而且会把执行的结果插入模板中


8.网站布局

将每一页的内容插入布局中

[ruby]  view plain copy
  1. <%= yield %>  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值