首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >sunspot-solr可以filter_by嵌套属性吗?

sunspot-solr可以filter_by嵌套属性吗?
EN

Stack Overflow用户
提问于 2010-08-23 22:36:05
回答 1查看 632关注 0票数 1

假设我有People,并且People has_many西瓜。

我有一个可以处理人员属性的filter_by,例如:

代码语言:javascript
复制
:filter_by => 'has_eaten_today'

但是,我可以为西瓜的嵌套属性执行:filter_by吗?例如:

代码语言:javascript
复制
:filter_by => 'watermelons.created_at'

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-08-24 00:32:08

这个问题来自我,我并不真正理解太阳黑子-solr,但它很简单。

只需将模型中的嵌套属性作为目标:

代码语言:javascript
复制
def watermelon_time
  self.watermelon.created_at
end

然后将其添加到

代码语言:javascript
复制
searchable do
  time :watermelon_time
..

然后我的控制器:

代码语言:javascript
复制
query.with(:watermelon_time).equal_to(params[:filter_by] == 'watermelon_time' ? 'true' : false) if params[:filter_by]

额外的奖励:

在my中添加了一个用于编写此功能的链接:

代码语言:javascript
复制
= link_to 'Watermelon Time', url_for(:overwrite_params => { :filter_by => 'watermelon_time', :page => nil })

祝你胃口好!

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3548570

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档