【问题标题】:find all result when select category all in rails在rails中选择所有类别时查找所有结果
【发布时间】:2026-02-08 00:30:01
【问题描述】:

实际上我有一个问题,因为当我从类别中选择全部时,我想搜索所有结果。因为现在我的类别中有 4 个选项。我有一个查询要查找针对 tha 等三个类别的结果,

这显示了针对家庭、公寓和广场等 3 个类别的结果,但是当我全选时,什么也没有发生。当我全选时,我应该做什么,然后所有属性都会显示。谢谢

【问题讨论】:

  • 什么是params["search"]
  • 有三个参数是'home','apartment'和'plaza'。现在我在选择类别中添加了第四个选项'all'。当我选择所有并按下搜索按钮时没有发生但出现错误“不兼容的字符编码:UTF-8 和 ASCII-8BIT”
  • 如果您将用户提供的数据直接传递到您的数据库,您的应用程序将容易受到SQL injection 的攻击。
  • 哦。那么请有任何建议

标签: ruby-on-rails ruby ruby-on-rails-4


【解决方案1】:

试试这样的:

@properties = Property.includes(:rooms)
@properties = (params["search"] == 'ALL') ? @properties.all : @properties.where(params["search"])
@properties = @properties.paginate(:page => params[:page], :per_page => 8)

在我的代码中,我认为“所有类别”的值为“全部”

【讨论】: