rails4里如何指定输出模板

新手上路,请多包涵

在新的Rails4里,如何在Controller里新增action,用于指定Render模板。

Controller里怎么写,View里怎么写。

阅读 4.5k
3 个回答

1.新增action
直接在Controller里面增加一个新方法就好了.

def your_method
end

2.指定模板
使用render的partial模式.
如下代码,将在你的views文件夹下面找寻 _your_partial.html.erb

def your_method
 render :partial=>'your_partial'
end

指定render模板可以

  def some
    if something
      render 'page/about_us'
    else
      render 'page/index',layout:'pure'
  end

更多内容可参阅Rails Guides

使用rails g生成scaffold。然后你就可以依样画葫芦了。

例如使用rails g controller welcome index。有如下输出。。

create  app/controllers/welcome_controller.rb
 route  get 'welcome/index'
invoke  erb
create    app/views/welcome
create    app/views/welcome/index.html.erb
invoke  test_unit
create    test/controllers/welcome_controller_test.rb
invoke  helper
create    app/helpers/welcome_helper.rb
invoke    test_unit
create      test/helpers/welcome_helper_test.rb
invoke  assets
invoke    coffee
create      app/assets/javascripts/welcome.js.coffee
invoke    scss
create      app/assets/stylesheets/welcome.css.scss

view就去app/views/welcome/index.html.erb里面看。controller就参照app/controllers/welcome_controller.rb

假如说你要新增一个hello的动作,就在app/controllers/welcome_controller.rb里面加上。。。

def hello
  # your code here
end

app/views/目录下添加hello.html.erb

logo
101 新手上路
子站问答
访问
宣传栏