首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NoMethodError rails

NoMethodError rails
EN

Stack Overflow用户
提问于 2012-05-08 07:21:33
回答 1查看 548关注 0票数 0

我在lib目录中有一个名为“Transpo.rb”的模块:

代码语言:javascript
复制
module Transpo
  class FT

    def getCities

      ...

    end

  end
end

在控制器中,我有

代码语言:javascript
复制
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“时总是给出错误:

代码语言:javascript
复制
NoMethodError in TranspoController#index

undefined method `getCities' for Transpo::FT:Class

为什么?我已经在application.rb中设置了auto_load库,但是仍然存在同样的问题。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-05-08 07:23:23

getCities被定义为实例方法,但您将其作为类方法调用。

或者创建一个类似于instance = Transpo::FT.new的实例,或者将getCities的定义更改为def self.getCities,使其成为一个类方法。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10490450

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档