我想在this design
上创建一个菜单一个菜单,您可以在其中选择要排序的类别以及您想要的类别。因此,当人们按下“精选设计”时,将显示所有设置为“特色”字段的iPhone设计。我希望人们能够从下拉菜单中选择iPad设计,然后才能显示出精选的iPad设计。我不知道怎么做到这一点。
有人可以给我一个指针吗?
我正在使用rails 3.2.2和mongoid。
更多信息
所以我在Meer.li完成了所有事情。菜单就在那里,应有尽有。我唯一需要补充的是下拉菜单(就像你在表格中看到的那样),所以我可以选择是否要看iPhone,iPad,Windows设计等。
我可以在rails中创建一个下拉菜单,但是如何使用它作为一种查询方式(就像你使用常规菜单一样),是另一回事。
型号代码:
field :featured, :type => Boolean, :default => false
field :project_number, :type => Integer, :default => 0
field :show, :type => Boolean, :default => true
field :full_member, :type => Boolean, :default => false
field :first_design, :type => Boolean, :default => false
field :option, :type => String
default_scope desc(:created_at)
scope :full_member_and_show, where(full_member: true).and(show: true)
scope :not_full_member_and_show, where(full_member: false).and(show: true)
控制器代码:
def newest
designs = Design.full_member_and_show
respond_to do |format|
format.html
end
end
所以基本上我想在每次从下拉菜单中选择其他项目的时候添加.and(:option =>“iPad”)。
有意义吗?
答案 0 :(得分:0)
你关闭了。当我进行分面搜索时,我首先在控制器中创建一个空数组:
@current_items = []
然后我开始根据我得到的参数添加项目。现在,如果你想在这里真的干,你应该从你的表格中的分面项目的名称命名你的范围。反之亦然,在表单之外命名您的范围。通过这种方式你可以做这样的事情:
params[:faceted_items].each do |item|
@current_items << Object.where("#{item}" => true)
end
然后将@current_items
作为视图中返回项目的数组。
每条评论更新
分面搜索是一种可以通过选择和/或选择不同属性来缩小范围的搜索。
如果这是您正在寻找的内容,听起来您可能想要嵌入整个搜索功能。我建议使用太阳黑子或狮身人面像。两人都在完成这项工作。