这个渲染方法定义在哪里?

时间:2014-02-14 19:10:17

标签: ruby-on-rails ruby api

我正在阅读本指南,试图开始使用Rails:http://guides.rubyonrails.org/getting_started.html,我正在教程中的这一点,我们有以下控制器:

class PostsController < ApplicationController
  def new
  end

  def create
      render text: params[:post].inspect
  end
end

这些render方法和params哈希定义在哪里?这个哈希包含什么?我正在尝试在API中搜索ApplicationController,但我只找到ActionController,据说ApplicationController继承,但我似乎无法在文档中找到方法或哈希我在这里想念的是什么?提前感谢任何评论或帮助。

2 个答案:

答案 0 :(得分:2)

您想要寻找的相关gem是actionpack。使用bundler,您可以轻松找到或打开安装此gem的目录:

bundle show actionpack
bundle open actionpack

在允许您进行项目搜索的编辑器中打开actionpack gem后,或者在安装了actionpack的目录下,请搜索def paramsdef render,它会显示定义这些方法的文件和行。 render位于lib/abstract_controller/rendering.rb第95行,params位于lib/action_controller/metal.rb第141行。

阅读Luke的来源。

答案 1 :(得分:1)

http://api.rubyonrails.org/classes/ActionView/Helpers/RenderingHelper.html#method-i-render 您可以预先获取源代码并查看该方法的代码。

相关问题