我使用演示器对象使一些复杂的数据可用于我的视图。我需要的部分数据是由javascript呈现的,为此,我想使用冈宝石将数据共享给浏览器。
这是我的(现在很简单),app/presenters/similarity_presenter.rb对象:
class SimilarityPresenter
attr_reader :similarities
def initialize(similarities)
@similarities = similarities
gon.histories = @similarities.each { |s| [s.id, s.data(10)] }
end
end当我执行我的行动:
def index
period = Period.default
@similarity_presenter = SimilarityPresenter.new Similarity.all
end我得到了一个undefined local variable or method 'gon'
发布于 2016-01-05 17:15:47
我发现的第一种方法是将gon变量传递给演示者:
def index
period = Period.default
@similarity_presenter = SimilarityPresenter.new gon, Similarity.all
end在推荐人中:
class SimilarityPresenter
attr_reader :similarities
def initialize(gon, similarities)
@similarities = similarities
gon.histories = @similarities.each do |s|
[s.id, s.data(10)]
end
end
end这是可行的,但我必须承认,我不太喜欢在我使用演示者的每个控制器中传递变量。
https://stackoverflow.com/questions/34617384
复制相似问题