0

家のモデルに関連付け (結合テーブル)を追加したhas_many :throughので、家は「土壇場」、「プールのある家」などの複数のカテゴリを持つことができます。

カスタムクエリを作成したので、例として、「直前」カテゴリのすべての家が必要です (5)

@lastminutes = House.find(:all, :select=>"houses.*", :joins=>"JOIN category_join_tables ON houses.id = category_join_tables.house_id", :conditions=>["category_join_tables.house_id = houses.id AND category_join_tables.category_id = ?", 5])

これはコンソールで正常に機能します。

私のサイトでこれを機能させるための最良の方法は何ですか。次のような URL 構造が必要です。

domain.com/locale/holidayhouses/lastminutes (house in the lastminute category)
domain.com/locale/holidayhouses/holidayhouses_with_pool (houses in the pool category)

domain.com/locale/lastminutes (houses and appartments in the lastminute category)

どんな助けでも素晴らしいでしょう!

4

1 に答える 1

1

とても簡単です:

config/routes.rb:

match 'search/*categories' => "controller#action"

アクションでは、カテゴリを配列として取得し、それらをクエリに解析するだけで済みます。そうしないと、レールはすべての通常のリクエストをカテゴリとして受け取り、アクションにリダイレクトするため、「検索」が必要だと思います。

Stack Overflow のように、Rails ルートに複数のタグを埋め込む方法を参照してください。


l18n部分については、次のようにすることができます

scope "/:locale" do
  # move all the other routes in here to work with the locale
end

I18Nのレールガイドをチェックしてください

于 2012-04-16T15:04:42.330 に答える