使用表单更新Rails中的实例变量

时间:2011-10-18 00:42:05

标签: ruby-on-rails

我确信这有一个非常简单的答案,但我很难弄明白。时间表has_many运行,运行属于时间表。在我的Timesheet#show页面上,我想要一个只有@ timesheet.runs填充的选择框。是否可以让用户从选择框中选择一个选项,然后更新TimesheetController中的实例变量?

1 个答案:

答案 0 :(得分:1)

当然,表单中的值只是一个哈希值。您可以访问其值并将其分配给任何变量,就像任何其他哈希一样。关于params哈希的唯一特别之处在于它是从表单自动生成的,这很方便。

因此,如果您的表单中包含id为“runs”的select,那么在控制器中,如果要将该select的值赋给名为run_value的变量:

def update
  run_value = params[:runs]
end

或者,您的表单可能还有id,例如timesheet,在这种情况下,您的控制器看起来像:

def update
  run_value = params[:timesheet][:runs]
end