我有一个模型页面,它有很多参数。我想根据“名称”列的值显示特定的参数。最好的方法是什么?
我正在将所有Page.parametes
转换为hash param[:name] = value
,因此在View中我可以使用<%= param[:name] %>
,但这在模型代码中看起来不太好。
def self.get_real(id)
params = {}
data = Parameter.where(page_id: id)
data.each do |var|
params[var.parameter.to_sym] = var.value
end
params
end
答案 0 :(得分:0)
如果你有页面对象的id,那么:
控制器中的:
def show # or whatever your action may be
@page_parameters = Page.find(params[:id]).parameters
end
视图中的:
<% @page_parameters.each do |p| %>
<%= p.name %> : <%= p.value %>
<% end %>
我没有看到将对象转换为基元的原因(在这种情况下)。