Ruby on rails 通过控制器手动将复选框设置为勾选
在我的索引控制器中,我有一点逻辑。有时,我想在页面呈现时将复选框默认设置为勾选。 为此,我想向视图传递一个参数,并获取复选框,以使用此参数true/false来确定显示为勾选还是取消勾选Ruby on rails 通过控制器手动将复选框设置为勾选,ruby-on-rails,parameters,checkbox,controller,Ruby On Rails,Parameters,Checkbox,Controller,在我的索引控制器中,我有一点逻辑。有时,我想在页面呈现时将复选框默认设置为勾选。 为此,我想向视图传递一个参数,并获取复选框,以使用此参数true/false来确定显示为勾选还是取消勾选 我可以这样做吗?我要做的是: 假设您正在向索引页传递一个参数q 所以url是:website.com/foo?q=true 复选框为模型控制的符号/字段为:bar 在控制器中,尝试使用@Mike的建议编辑如下内容: 看看这是否有效。我认为您的视图中不需要任何额外的逻辑。所以您传递的参数可能与复选框字段本身无关?
我可以这样做吗?我要做的是: 假设您正在向索引页传递一个参数q 所以url是:website.com/foo?q=true 复选框为模型控制的符号/字段为:bar 在控制器中,尝试使用@Mike的建议编辑如下内容:
看看这是否有效。我认为您的视图中不需要任何额外的逻辑。所以您传递的参数可能与复选框字段本身无关?也就是说,您是否试图传递一个参数,比如?foo=val,然后检查:bar的输入?或者参数与:bar有关?我下面的答案应该仍然有效。更好的是第3行更简单,删除true:false部分,并将其保留为:@model.bar=params[:q]==true。我以为有一个速记,但没有记住。如果你不介意的话,迈克,我来修改答案好吗?
def index
@model = Model.new
@model.bar = (params[:q] == "true")
end