【问题标题】:check_box manually set to ticked through controllercheck_box 手动设置为通过控制器勾选
【发布时间】:2011-11-22 11:58:07
【问题描述】:

在我的索引控制器中,我有一点逻辑。有时,我想在页面呈现时将复选框默认设置为勾选。 为此,我想将一个参数传递给视图并让 check_box 使用此参数(真/假)来确定是显示为勾选还是未勾选。

我可以这样做吗?

【问题讨论】:

  • 所以您传递的参数可能与复选框字段本身无关?意思是,您是否尝试传递像 ?foo=val 这样的参数,然后您想检查 :bar 的输入?或者参数是否与 :bar 相关?
  • 我下面的答案应该仍然有效。

标签: ruby-on-rails parameters checkbox controller


【解决方案1】:

我会这样做:

假设你的 index 页面你正在传递一个参数 q。

所以网址是:website.com/foo?q=true

复选框为模型Model控制的符号/字段是:bar

在您的控制器中,尝试这样的操作(根据@Mike 的建议编辑):

def index
  @model = Model.new
  @model.bar = (params[:q] == "true")
end

看看这是否有效。我认为您的视图中不需要任何额外的逻辑。

【讨论】:

  • 更好的是通过删除 true : false 部分并将其保留为:@model.bar = (params[:q] == "true")跨度>
  • 我以为有一个速记但脑子里一片空白。如果你不介意,迈克,我会编辑答案?
猜你喜欢
  • 2011-03-11
  • 1970-01-01
  • 2014-07-04
  • 2019-06-01
  • 2018-01-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-04
相关资源
最近更新 更多