Ruby 控制器中获取对象的私有方法

Ruby 控制器中获取对象的私有方法,ruby,ruby-on-rails-3,Ruby,Ruby On Rails 3,如果我把这个方法放在images_控制器中,那么它会给出一个错误 有什么问题吗?您忘了结束您的方法create。这就是ruby感到困惑的原因。在create中的objec是打字错误吗?哪一行专门抛出错误?@images=object-at-index方法。如果我将该方法重命名为“ohai”或其他名称,也没有什么区别对象是一种跨Rails API使用的方法。此外,从缩进中不清楚实际定义了对象的位置:它在控制器类中吗?不清楚对象在哪里定义:它在哪里定义?也就是说,它的范围是什么?请包括有问题的代码,

如果我把这个方法放在images_控制器中,那么它会给出一个错误


有什么问题吗?

您忘了结束您的方法
create
。这就是ruby感到困惑的原因。

create
中的
objec
是打字错误吗?哪一行专门抛出错误?@images=object-at-index方法。如果我将该方法重命名为“ohai”或其他名称,也没有什么区别<代码>对象是一种跨Rails API使用的方法。此外,从缩进中不清楚实际定义了
对象
的位置:它在控制器类中吗?不清楚
对象
在哪里定义:它在哪里定义?也就是说,它的范围是什么?请包括有问题的代码,并一致地缩进,这样我们就可以知道它的实际定义。你是对的。非常容易混淆模块的所有这些结尾。谢谢!谢谢!很抱歉,我没有理解这个评论
module Api  
   class ApiController < ApplicationController

    before_filter :authenticate        
    private
      def authenticate
        #check if GET parameter
        return true if @user = User.find_by_token(params[:token])

        #check if token in header
        authenticate_or_request_with_http_token do |token, options|
           @user = User.find_by_token(token)
        end      
      end      
  end
end

module Api
  module V1
    class AdvertisementImagesController < ApiController

      def index
        @images = images
      end

      def create
        if images.create :remote_image_url=>params[:image][:remote_image_url] 
          return render :nothing => true, :status=>201
        else
          return render :nothing => true, :status=>500
        end

     private
      def images
        @user.advertisements.find(params[:advertisement_id]).images  
      end
undefined local variable or method `images' for #<Api::V1::AdvertisementImagesController:0xb2d558d8>
#in ApiControler
private        
  def images
    @user.advertisements.find(params[:advertisement_id]).images  
  end