2012-04-09 53 views
0

我试图在我的视图中定义一个选择标记。 我的看法是这样的:试图定义一个select_tag

<div class="field"> 
<%= f.label :analyst %><br /> 
<%= select_tag :sub_category_analyst, options_for_select(analyst_names, :selected =>  @sub_category.analyst || 0) %> 

和我的模型看起来喜欢这样的:

@@analyst_names = ["", "foo", "bar"] 

belongs_to :category 
has_many :products 

def analyst_name 
    @@analyst_names[analyst.to_i || 0] 
    end 

def self.analyst_names 
    @@analyst_names 
    end 

尝试加载页面时的错误是:未定义的局部变量或方法`analyst_names'

提前致谢!

+1

你想达到什么目的?对我来说,看起来你应该将一些东西移动到模型上。 – klump 2012-04-09 18:17:24

回答

0

我不知道你的模型叫什么,所以我现在称它为MyModel

在您看来,您将要用MyModel.analyst_names替换analyst_names,因为否则它认为analyst_names是视图中的局部变量,然后它无法找到该变量。

您可能会从阅读范围内获益(关于它的一些链接是herehere)。