0

私はRubyonRailsを初めて使用します。私はすでにこれらのルートを持っています

  namespace :swimming do resources :classschedules    end

このコントローラーに新しいアクションを追加しました

class Swimming::ClassschedulesController < ApplicationController

  def date 
    @date = params[0]
  end
end

この新しいアクションのルートを追加するにはどうすればよいですか?

水泳/クラススケジュール/日付/2013-03-07のように電話したいです。これは単一の要素であり、2013-03-07はこのアクションで使用したいパラメーターです。

4

2 に答える 2

1

/swimming/classcehdules/date/2012-12-03一致するようなURLが必要な場合は、次を試してください:

namespace :swimming do
  resources :classschedules do
    get 'date/:date', :action => 'date', :as => :date, :on => :collection,
                      :constraints => { :date => /\d{4}-\d{2}-\d{2}/ }
  end 
end

追加は、 param が期待される形式である:constraintことを確認することです。:dateアクションでは、次のように日付を取得できます。

def date
   @date = params[:date] # => "2012-12-03"
end

ルーティングに関する詳細については、http://guides.rubyonrails.org/routing.html をご覧ください

于 2013-03-02T08:40:38.397 に答える
0
namespace :swimming do 
  resources :classschedules do
    get 'date', :on => :member # or collection
  end
end

ガイドの詳細情報

于 2013-03-02T06:46:12.050 に答える