問題タブ [rails-routing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
3115 参照

ruby-on-rails - Rails のリソースには、ID なしでマッピングされた「show」があり、/users/id の代わりに /users.id リンクを作成します

私の現在のルーティングでは、次の ruby​​ on rails コード:

次のようなリンクが生成されます。

一方、Ruby on Rails は、次のような1形式であると想定しているため、これを理解するのに苦労しています。

Railsがそのようにルーティングすることは、正確には意味がありません/users/1。ただし、これを手動で試すと、次の結果が得られます。

のように ?id= パラメータを使用して手ごとに ID を入力すると、問題なく/users?id=1動作します。

問題は、users.id がどこから来ているのか、修正方法がわからないことです。私のルーティング ファイルは次のようになります。

理由を知りたいのですが、上記のアクションを除くすべてのアクションが正常に機能します。rake routes次のようにレイアウトします。

ここでの問題は、users#show が users#index に取って代わったように見えることです。これは、/users に対して行うのが正しいことです。これはすべて、当面の問題に関してカスタム ルートを使用しないデフォルト ルーティングであるため、ここではまったくわかりません。何か案は?

編集: users#show コードは次のように単純です。

0 投票する
1 に答える
1668 参照

ruby-on-rails-3 - これらの競合する Rails ルートを解決するにはどうすればよいですか?

routes.rb に次のようなエントリがあります。

これにより、次のようなルートが作成されます。

しかし、/baskets/owned を呼び出すと、次のようになります。

このルーティングの競合を解決する最も慣用的な方法は何ですか?

0 投票する
1 に答える
111 参照

javascript - SO WMD エディターの JavaScript は RoutingError をロードします

これに対する答えは非常に簡単です。

derobins の WMD エディター ( Here ) を Rails アプリで使用しようとしています (これは、入力時に使用している SO のものです)。しかし、何らかの理由で js ファイル (showdown.js と wmd.js) が読み込まれません。

コンソールに次のエラーが表示されます。

ActionController::RoutingError (「/public/javascripts/wmd」に一致するルートはありません) ActionController::RoutingError (「/public/javascripts/showdown」に一致するルートはありません)

... wmd.js と showdown.js の両方のファイルが [myapp]/public/javascripts にあるという事実にもかかわらず。


readme には、次のようなファイルを含めるように記載されています。


...試してみましたが、これはうまくいきませんでした(明らかな理由からだと思います)。

だから私は次のようにそれらを含めました:

私はこれらを..開始時に(例src="..public/")、なしで/、およびなしで試しました.js

感謝して受け取った助け。

0 投票する
1 に答える
2283 参照

ruby-on-rails - Rails:静的リソースのルート

スクリプトパス用のjsとスタイルシート用のcssを含むcss/htmlコンテンツがありますが、スクリプトはjavascriptファイルにあり、スタイルはスタイルシートパスにあります。

すべてのimgリクエストをimagesフォルダーに、jsをjavascriptsフォルダーに、cssリクエストをstylesheetsフォルダーにマップするようにroutes.rbを構成するにはどうすればよいですか?

0 投票する
1 に答える
2262 参照

ruby-on-rails - Rails 3 ルートのワイルドカード

私は現在、Rails 3 アプリケーションでルートを設定しています。誰かが私を正しい方向に向けることができれば幸いです。

基本的に、チェーンされたドロップダウンにデータを提供するためにいくつかのルートを設定しており、次のようなルートを設定できるようにしたいと考えています。

01299999 と 02299999 は 2 つの異なるパラメーターの ID です (この場合、01299999 は :vehicle_make をパラメーターにロードし、02299999 はパラメーターの :fuel_type であるとします)。制約を使用することで、正しいコントローラー アクションに確実にルーティングし、正しいパラメーターをロードできることを認識しています。

ただし、これを複雑にしているのは、URL に複数のオプションを任意の順序で指定できるようにしたいということです。

また

これらは ID 番号の構造に基づいて正しいパラメータをロードします (したがって、「012」で始まる場合は常に :vehicle_make であり、「022」で始まる場合は常に :fuel_type である必要があります。これを行うにはどうすればよいですか?

補足として、誰かが私のモデルの id 列を制約する方法を示すことができれば、それは素晴らしいことです.

ご協力ありがとうございます。

0 投票する
1 に答える
205 参照

ruby-on-rails - Rails 3ルーティング:「/ products?cat = 1」があり、「/art」が必要です

私はRailsにかなり慣れていないので、ルーティング構成に混乱しています。

私のプロジェクトには、製品とカテゴリの2つのモデルがあります。製品belongs_toカテゴリ、カテゴリhas_many製品。

Productsコントローラーには、オプションのパラメーターをとるインデックスアクションがありますcat。存在する場合、catパラメータは製品のリストをそのカテゴリ内の製品にフィルタリングします。かなり基本的なもの。

私が望んmysite.com/artいるのは、と同じ結果をmysite.com/products?cat=1出すことです。ここで、「art」はカテゴリ1のスラッグです。製品用を含む、他のいくつかのリソースのあるルートを定義しています。

私も指摘/products/some-product-slugしたいproducts#show

Rails 3を使用しています。このルーティング設定を実行するにはどうすればよいですか?

0 投票する
1 に答える
1842 参照

ruby-on-rails - RailsのRESTから投稿データを取得する

これは長い質問ですので、把握に時間がかかる場合はお詫び申し上げます。できるだけシンプルにしておきます。

私はここで少し必死になり始めていますが、私はとても近くにいます。私はしばらくの間Rubyと格闘していて、postとnet::httpと通信しています。だから私が今持っているのはハッシュがjsonに変換されていることです。net :: httpからのPOSTリクエストを使用してネットワーク経由で送信され、それをオブジェクトに戻そうとしています。

私が調査したルートの1つは、アクティブレコードとアクティブリソースでしたが、双方でいくつかの問題が発生した後、独自のモデルを定義し、変換方法を検討して送信することにしました。

私のモデル

このモデルはcustomRequestと呼ばれます。その中に、2つのクラス変数をハッシュに取り込んでjsonに変換し、それを送信するpost_meがあります。

これがカスタムリクエストです。

質問

私が心配しているビットは次のとおりです。

  1. 受信URLは、コントローラールートで形式が決定されるため、add.jsonと記述しました。それが必要かどうかわかりませんか?
  2. 変数からハッシュを生成して再構築のために送信する方が良いですか、それともクラス全体を_jsonに変換して送信する方が良いですか?

Railsコンソールでクラスをそのまま作成して送信すると、ターミナルで200と応答が返されます。

詳細

(注:シーンで何が起こっているのかを本当に知りたい場合にのみ、このビットを読んでください)

これが同じ応答です。Jsonに変換しない場合:

誰かが質問1と2に答えてくれたら、私は素晴らしいと思います


サーバ側

リクエストを受け取り、それをJsonとオブジェクトに戻す必要があるサーバー側を次に示します。私は、ほとんどがコメントアウトされているさまざまなことを試しました。

基本的に、タグに詳細が記載された200の応答が返されますが、ハッシュオブジェクトを配置しようとすると、何も返されません/

これは、それを分解してオブジェクトに戻すという複数の試みです。

1つは送信されたハッシュからオブジェクトを再作成しようとしたことと、もう1つはhash_to_jsonをhash_from_jsonに再作成しようとしたことを除いて、すべてほとんど同じです。

さらに質問を

それで:

  1. params(:myHash)を使用してオブジェクトを正しく作成していますか、それとも各変数を個別に参照する必要がありますか?
  2. paramsは自動的に読み取り可能な形式に戻されますか、それともJSONに入れたり、JSONを解析したりする必要がありますか?それに関して、私がどちらを使うかは重要ですか?
  3. オブジェクトを正しく再構築していますが、何も表示されないのはなぜですか?
  4. (オプション)その後、テーブルに保存する簡単な方法はありますか?
0 投票する
2 に答える
490 参照

ruby-on-rails - Ruby On Rails REST:POSTリクエストのURLパターンをカスタマイズする

私はRubyOnRailsを初めて使用し、RESTプロトコルの実装についてサポートが必要です。

RESTでPOSTを実行すると、URLが返さhttp://my-site.com/id/1 れます。たとえば、上記の例で示したURL形式のカスタマイズされた応答が必要です。パラメータに関する投稿を行っているとしましょう。私<main-id>123</main-id> が探しているカスタマイズされた応答はhttp://my-site.com/123/id/1 、投稿中に渡したパラメータIDが何であれ、応答URL出力の一部として実装したいものです。

よろしくお願いします。

0 投票する
4 に答える
925 参照

ruby-on-rails - Rails3のパスヘルパーに関するルートの問題

私のルートには次のものが含まれています。

私の見解は次のとおりです。

Railsはedit_individual_drop_ship_orders_pathを認識しません

私のコントローラーで、edit_individualアクションを追加しました。

私のエラー:#<#:0x000001067314a8>の未定義のローカル変数またはメソッド `edit_individual_drop_ship_orders_path'

誰かが私を助けてくれますか?

ありがとうございました