Rails扩展了“show”函数

时间:2015-05-28 20:29:29

标签: ruby-on-rails ruby-on-rails-4 model-view-controller controller routes

我是初学者,无法弄清楚从哪里开始解决这个问题。

我有完整的功能Entities Controller我可以创建新的实体并添加我需要的所有信息。

现在,我想在Show页面上设置一个简单的按钮,指示我从Example/entities/12Example.com/entities/12/custom_view页面并呈现entities视图custom_view加上传递id = 12的实体信息。所以我可以显示特定实体的所有信息。

我希望它不是很混乱,但我真的不知道从哪里开始。我通过entity controller命令创建了rails generate scaffold

希望你能提供帮助。 感谢

1 个答案:

答案 0 :(得分:2)

要实现这一目标,没有太多事情要做。这很简单。根据我的理解,你需要像#34; / entities / 12 / custom_view"并且您想要找到ID为12的实体并在custom_view模板中呈现该实体信息。她如何实现这一目标:

  1. 添加新操作的路线

    # routes.rb
    resources :entities do
     member do
       get 'custom_view'
     end
    end
    
  2. 在控制器中添加操作,查找实体

    # entities_controller
    def custom_view
     @entity = Entity.find(params[:id])
    end
    
  3. 创建视图模板

    # views/entities/custom_view.html.erb
    # you can use @entity object to show your entity attributes
    <p>@entity.inspect</p>