2016-07-14 6 views
0

私は、リダイレクトを行う前に、urlから別のものにURLをリダイレクトしようとしています。パラメータの1つを処理して、 (または変更しない)場合は、リダイレクトを行います。 0x007fe1db4e4e08>カスタムメソッドを作成し、ruby on routesのroutes.rbで呼び出します。4

何午前:それは私がこれまで

#routes.rb 
get 'Client/:f_name/:l_name', to: redirect { |params, req| 
     "clients_area/#{params[:f_name].parameterize}/#{my_process_params_method(params[:fname], params[:lname]) }" 
     } 

を試してみました。しかし、私は

は、未定義のメソッド `::マッパーActionDispatch ::ルーティングのための「my_process_params_method

エラーを得続けるものです私はここで間違っている?またはより良い解決策がありますか?

私はルートのレベルでこのリダイレクトを行い、それを処理するアクションを作成しないといけないということです。

+0

アクション/メソッド内でこのパラメータを変更できないのはなぜですか? –

+0

コントローラーメソッドを作成してそこからリダイレクトするのはなぜですか? – power

+0

これは、理由のためにリダイレクトする必要がある従来のURLです。彼らはこのようにしなければなりません。私はリダイレクトのリダイレクトを行うことはできません。なぜなら、これはSEOの理由でも悪いことです – anyavacy

答えて

1

私は間違いを認識しました。モジュール内のメソッドがクラスメソッド(self.method_name)として宣言されていて、メソッドが呼び出されている必要があります。MyModul.my_process_params_method(var1, var2)

関連する問題