是否可以检查params是否存在以评估结果

时间:2012-02-02 14:40:26

标签: ruby-on-rails-3 params

是否可以检查params是否存在以决定渲染哪个部分?

我有一个搜索输入,它将结果返回到索引操作,如果用户刚刚访问了索引操作,我想返回'index_partail',但如果用户搜索了某些内容,我想返回'search_partial ',类似于:

unless params[:search].empty?
  render 'post_head'
else
  render 'search_head'  
end

这样做有什么问题,还是有更好的选择?

1 个答案:

答案 0 :(得分:2)

搜索是一种非常不同的操作,而不仅仅是显示页面 - 如果搜索参数存在,您是否还需要进行查找?对我而言,这听起来像是不同的操作,因此采取了不同的行动。

那说,还有更糟糕的事情。不过,我会考虑扭转这种情况。

if params[:search].empty? ...etc...

我发现unless的这种用法非常易读,但这主要是偏好。