相关疑难解决方法(0)

Rails/lib模块和

我正在为open_flash_chart插件编写自定义包装器.它被放入/lib并作为模块加载ApplicationController.

但是,我有一些类层次结构或smth问题.

从任何控制器我可以访问open_flash_chart的功能OpenFlashChart,Line等等

但是,在/lib模块中的类中,它不起作用!

有任何想法吗?

ruby module ruby-on-rails class

81
推荐指数
3
解决办法
10万
查看次数

Rails 3自动加载

我有一个类ConstData:

class ConstData

  US_CITIES = ['miami', 'new york']

  EUROPERN_CITIES = ['madrid', 'london']

end
Run Code Online (Sandbox Code Playgroud)

它存储在/lib/const_data.rb下

我的想法是在模型,控制器或视图中我可以做到:

ConstData::US_CITIES 获得US_CITIES等

Rails应该自动加载这个类,我从以下网址获取:http: //groups.google.com/group/rubyonrails-talk/browse_thread/thread/662abfd1df9b2612?hl = en

但这不起作用.任何人都可以解释我如何做到这一点?

ruby-on-rails ruby-on-rails-3

15
推荐指数
2
解决办法
2万
查看次数

来自Controller的调用模块功能(NoMethodError)

所以我有一个模块"MiddleMan"我可以在rails控制台中调用它,但在控制器中我得到一个NoMethodError

在控制器中我有:

class SignUpController < ApplicationController
  include MiddleMan
  def page_one
      @package = MiddleMan::read_catalog("a", "b", "c")
  end
end
Run Code Online (Sandbox Code Playgroud)

在middleman.rb模块中,我有:

module MiddleMan
  def read_catalog(package, payment, coupon)
    Package.new(:price => "4.99")
  end
end
Run Code Online (Sandbox Code Playgroud)

有什么想法吗?

controller module ruby-on-rails ruby-on-rails-3

5
推荐指数
1
解决办法
2万
查看次数

如何调用另一个控制器的方法

我需要从另一个控制器调用方法.什么是最好的方法?例如:

catalogues_controller.rb

class Site::CataloguesController < ApplicationController
  respond_to :js, :html

  def index
    produc_list # call method other controller
  end
end
Run Code Online (Sandbox Code Playgroud)

other_controller.rb

class OtherController < ApplicationController

  respond_to :js, :html

  def produc_list
     myObj = Catalagues.find(params[:id])
     render :json => myObj
  end
end
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails ruby-on-rails-3

3
推荐指数
1
解决办法
1万
查看次数