我在lib目录中有一个名为“Transpo.rb”的模块:
module Transpo
class FT
def getCities
...
end
end
end在控制器中,我有
require 'Transpo.rb'
class TranspoController < ApplicationController
def index
@transpo = Transpo::FT.getCities()
respond_to do |format|
format.html # index.html.erb
format.json { render json: @transpo }
end
end但是当我运行"http://localhost:3000/transpor“时总是给出错误:
NoMethodError in TranspoController#index
undefined method `getCities' for Transpo::FT:Class为什么?我已经在application.rb中设置了auto_load库,但是仍然存在同样的问题。
发布于 2012-05-08 07:23:23
getCities被定义为实例方法,但您将其作为类方法调用。
或者创建一个类似于instance = Transpo::FT.new的实例,或者将getCities的定义更改为def self.getCities,使其成为一个类方法。
https://stackoverflow.com/questions/10490450
复制相似问题