私はreactjsで遊んでいた簡単なレールプロジェクトを持っています。いくつかの基本的なナビゲーションを追加するために、私はjs-routesライブラリを持ってきました。そして、 "localhost:3000/addresses/1"のようなパスパラメータを持つURLにはうまくいきます。js-routes(:: format)をURLに追加する
私が直面している問題は、「新しい」リソースメソッドを呼び出そうとしていて、URLhost:3000/addresses/new(。:format: )は無効なパスです。
「new_address_path」というパスは、routes-jsドキュメントで指定されているとおりに参照しています。このURLのすくい出力は以下の通りです:
<a href={Routes.new_address_path}>Create am address</a>
ENV:問題の
-Ruby: 2.2.4
-Rails: 4.2.6
-js-routes: 1.2.8
ルート:
new_address_path GET /addresses/new(.:format) addresses#new
上記のパスを利用したHTMLスニペットは次のようになります
resources :addresses
私は迷っていますここに?それは、レールのルートファイルを適切に解釈していないようです。
申し訳ありません。私のルートは、デフォルトのレールルートタイプの "resource"を使用しています。このタイプの "resource"は自動的にURLの末尾に(::フォーマット)を追加し、異なるフォーマットを受け入れることができます。 ERBファイルで作業しているときに、書式を指定する必要はありません。html/jsonかどうかを判断します。js-routesと同じ動作が期待されます。私はフォーマットを通過することができますが、それは無駄のようです。これは役に立ちますか? – gwnp