搜索具有多个描述对象的对象?

时间:2014-06-20 03:54:06

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

我是Rails的新手,我需要一些建议:)我有这个:

class Club < ActiveRecord::Base
  has_many :players, :through => :club_players
  has_many :club_players
end

class Player < ActiveRecord::Base
  has_many :clubs, :through => :club_players
  has_many :club_players
end

class ClubPlayer < ActiveRecord::Base
    belongs_to :club
end

create_table "players", force: true do |t|
    t.string   "name"
    t.string   "age"
    t.string   "nationality"
    t.string   "sex"
end

现在我想建模搜索引擎,用户可以按年龄搜索玩家,并在下拉列表中定义如下:

Team Seniors
Team Kids
Age [14-18]
Age [19-25]
Age [26-30]
Age [31-35]
Age [36-40]
Retired

或按国籍:

American
Indian
French
Mixed

如果用户点击Age [19-25],我的搜索引擎会如何?定义下拉列表中某些字符串代表什么是个好主意?同样的国籍。例如,我需要在某处定义A Team Seniors所代表的类别。我会将该团队定义为拥有超过25%的25岁以上球员的球队。所以,我需要以某种方式定义从Player的某些列定义的类别。

这样做的最佳做法是什么?谢谢!

1 个答案:

答案 0 :(得分:1)

我会为每个类别创建标签。然后,您可以应用要应用于它们的许多/少量标记。或者,您可以为国籍等不同部分创建一些查找表/列表。

对于年龄,您可能需要过生日,然后您可以创建一个年龄方法来为您提供当前年龄。