0

この形式の URL を解析しようとしていますhttp://landing.com?data=123 - 次のように irb を介してデータを取得できました。

require "addressable/uri"
uri = Addressable::URI.parse("http://landing.com?data=123")
uri.query_values['data']
=> '123'

しかし、Rails ビュー内でその「データ」を操作する方法に行き詰まっています。次のようにコントローラー(私のサンプルではpages_controller.rb)に含めてみました:

class PagesController < InheritedResources::Base

  def test
    uri = Addressable::URI.parse("<%= request.original_url %>")
    u = uri.query_values['data']
  end

end

しかし、ビュー内で使用するためにそのデータを抽出する方法がわかりません。これに関するガイダンスはありますか?

その「テスト」メソッドを呼び出す場所のようなビューの1つを開くと、初期化されていない定数PagesController::Addressableを取得していますが、gem which addressable/uriを使用して環境にあることを確認しました

4

2 に答える 2

2

コントローラーには、既に解析された多くのクエリ情報があります。でアクセスできますparams。その場合、使用できます

u = params[:data]
于 2016-07-05T17:22:35.573 に答える