1

ディレクトリを表示するために、さまざまなモデルの多くのアイテムを取得するために検索を行っています。これらはすべて、このような特定の文字で始まります。

@everything = ThinkingSphinx.search(
               "@name ^?",
               @letter,
              :match_mode => :extended,
              :classes => [Performer, Promoter, Tour, Venue, User],
              :order => :name_sort,
              :sort_mode => :asc
              )

ただし、アイテムはアルファベット順にソートされていません。ascをdescに変更すると、順序は変わりますが、まだ識別可能なパターンではありません。

インデックスはこのように設定されています

performer.rb
define_index do
  indexes name, :sortable => true
  indexes description
  has created_at, updated_at
end


promoter.rb
define_index do
  indexes name, :sortable => true
  indexes description
  has created_at, updated_at
end


tour.rb
define_index do
  indexes name, :sortable => true
  indexes description
  has created_at, updated_at
end

venue.rb
define_index do
  indexes name, :sortable => true
  indexes description
  has created_at, updated_at
end

user.rb
define_index do
  indexes first_name, :sortable => true
  indexes last_name, :as => :name, :sortable => true
  indexes bio
  has role, created_at, updated_at
end

ご覧のとおり、ユーザーインデックスエイリアスlast_nameは名前ですが、これが唯一の奇妙な点です。

私は思考スフィンクス2.0.12を使用しています

4

0 に答える 0