-2

我有一个简单的搜索查询,它返回基于邮政编码的建筑物列表。邮政编码存储在地址表中,建筑物和地址具有一对一的关系。现在我需要根据多个邮政编码搜索建筑物。

<input type="text"
       name ="fs_Zip[]"
       class="input-small text-tip"
       data-original-title="Enter Zip Code to search."
       placeholder ="Zip Code"/>

这是我认为的代码。并在控制器中

buildings = buildings.where('address.zip in (?)', params['fs_Zip'])
if (!params["fs_Zip"].blank? && params["fs_Zip"] != 'zipcode')

但它没有给出预期的结果。任何帮助。

4

1 回答 1

1

如果我理解正确,您的查询应该看起来更像这样:

buildings = Building.joins(:address).where('addresses.zip in (?)', params['fs_Zip'])

但是您需要确保params['fs_Zip']该查询的格式正确(即 zip 数组)。

于 2013-10-30T13:52:04.277 回答