2011-01-21 13 views
1

レコードを表示および編集し、1日ごとにフィルタリングする構造があります。しかし、我々は、このビューには、特定の日のtime_recordsを示し日はURLの一部非データベースモデル経由のルーティング

/time_records/day 

になりたいです。しかし、time_recordを追加すると、同じページにリダイレクトする必要があります。

createに電話するには、「day」の部分を除いてtime_recordsを呼び出します。同じページにリダイレクトするには、redirect_toにモデルオブジェクトを渡す必要があると思いますが、そのモデルはその日でなければなりません。

私のモデルにDayオブジェクトを追加する唯一のソリューションはありますか?これは、DateTimeが既に論理的には十分であるため、少し浪費しているようです。これはルーティングに関するものです。あなたは、URLヘルパーメソッドを使用することができます

match '/time_records(/:day)' => 'time_records#show', as: 'time_records' 

routes.rbに:で

答えて

0

time_records_path(day: Date.today) 

"/time_records/2011-01-21"を生成します。これは、RailsではDateオブジェクトがto_paramメソッドに応答するため、部分的に機能します。

これはすべてあなたがruby 1.9.xとレール3.0.xを使用していることを前提としています

+0

これはPOSTでも機能しますか?私はその部分を理解することはできません。 –

+0

Btwこれは動作します。ありがとう。しかし、私は絶対に考えていない... –

+0

Hehe、ok。解析されたルートセットを表示するための 'rake routes'を覚えていて、明確でないものについては自由に質問してください。私は私の答えを更新しようとします。 – noodl

関連する問題