我对下面的代码有一个奇怪的零问题。
视图(部分视图):
<p>
<%= label :maintenance, :name %>
<%= text_field(:maintenance, :name, :size => 20) %>
</p>
<p>
<%= label :maintenance, :type %>
<%= select :maintenance, :type, @m_types %>
</p>
如果删除文本字段或将其移动到选择项下方,则在选择项中的:维护将得到零。
控制器方法:
def new
@log = Log.new
@maintenance = Maintenance.new
@m_types = Maintenance.types
@cars = Car.all
print @maintenance
if not params[:car].nil?
@log.car = params[:car]
end
respond_to do |format|
format.html # new.html.erb
format.xml { render :xml => @log }
end
end
我假设它一定是一些奇怪的Ruby评估工具,但我不知道我在找什么。我用谷歌到处搜索,但不知道你在搜索什么,这很难做到。
蒂亚!
感谢所有帮助过我的人,但是我重构了我的模型,更改了我的继承列,它现在可以工作了。我认为问题在于我使用了:type作为继承列,所以当我在执行文本字段之前要求在select中设置:type时,它不知道我使用的是维护对象,它正在查找常规对象。任何普通的Ruby对象都会将:type字段用于其他内容。所以它在寻找:类型设置为一个模块,而不是像我试图做的那样设置为一个字符串。
你可以看到我的新
setup
这是有效的。希望有人能从中吸取教训。