問題タブ [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 に答える
170 参照

ruby-on-rails - Rails3リソース機能で1つのルートをカスタマイズする

デフォルトでは、resourcesコマンドはnewアクションのURLをとして生成し{model}/newます。ドキュメントによると、ハッシュを送信しpath_names = {}てもベースは変更されません。アクションにルーティングする{model}にはどうすればよいですか?/submitposts#new

0 投票する
2 に答える
596 参照

ruby-on-rails - Rails:RESTfulリソース:使用する価値があるか、柔軟性がない/過大評価されていますか?

私は過去2か月間レールをいじっていましたが、これまでのところすべてが順調に進んでいますが、少し疑問がある領域が1つあります。

私はRESTfulRailsリソースの喜びについて聞き続けています。つまり、config / routersの「resource:foo」と、コントローラーでの7つの安らかなアクションです。

非常に単純なこと(たとえば、99%が「足場の生成」を実行することによって行われること)を除いて、config / routersのURLを1つずつ一致させて実行するよりも、プロジェクト機能をそのアプローチに詰め込む方が便利ではないことがわかります。必要に応じて各アクション。

しかし、私は自分が間違っていると感じ続けており、最も極端な状況を除いて、RESTfulなリソースが道のりです。

それで:

(a)誰かがこれについて意見を述べることができますか?

(b)経験豊富な鉄道関係者にとって、典型的なプロジェクトのルートの何%が:resourcesであり、何%がアクションごとにコード化されていますか?乾杯...

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

ruby-on-rails - Rails 3 Routes: DRY メンバー

次のメンバー メソッドを多数のリソースに追加する必要があります。これを DRY する方法はありますか?

私のroutes.rbで

編集

私は実際に次のようにモジュールに移動しました:

これで、routes.rb は次のようになります。

インライン コメントを参照してください。ただし、名前付きルートを次のようにしたい:main_users_comments_up_votes

0 投票する
6 に答える
20653 参照

ruby-on-rails - Rails 3 link_to (:method => :delete) が機能しない

Rails の動詞に問題があります...

has_many (ノミ) のリソース (犬) のページを表示します。犬に埋め込まれshow.html.hamlた呼び出しは、render @dog.fleas自動的に (?) "fleas/_flea.html.haml" のテンプレートを見つけて使用し、その犬に関連付けられた各ノミを一覧表示します。

これは正しく表示されます。わあ!ここで、各ノミの横に、URL に移動する「ノミを殺す」リンクを配置しました//localhost:3000/dogs/1/fleas/7。これは次によって生成されます。

しかし、そのリンクがクリックされるたびに確認が行われず、ノミのshow.htmlページが表示されます。DELETEの代わりにGET onを使用しているかのようです ?!?/dogs/1/fleas/7

ps- スパイダーやロボットがデータベース内のものを削除する心配はありません... ただ Rails を学び、何が起こっているのかを理解しようとしています。

0 投票する
3 に答える
13546 参照

ruby-on-rails - Rails 3 エンジンからのルートをホスト アプリケーションで使用できるようにするにはどうすればよいですか?

追加機能を含むいくつかのエンジンを備えた Rails 3 アプリケーションがあります。各エンジンは、顧客がアクセス権を購入できる個別のサービスです。

ただし、コントローラーとビューですぐに利用できないエンジンからのルートに問題があります。

コントローラ:

app/views/classrooms/new.html.haml:

config/routes.rbエンジン内:

config/routes.rbアプリ内:

lib/my_engine_name.rbエンジン内:

に行こうとすると/classrooms/new

classrooms_path他のビューから呼び出そうとすると、同じエラーが発生します。ただし、呼び出しMyEngineName::Engine.routes.url_helpers.classrooms_pathて機能させることはできます。ルートを間違って定義したのではないかと考えていますが、別の方法が見つかりません。

Passenger (スタンドアロンおよび Apache モジュール) と WEBrick (rails サーバー) の両方でアプリを実行してみました。Git から最新の Rails を使用する ( 7c920631ec3b314cfaa3a60d265de40cba3e8135)。

0 投票する
3 に答える
3505 参照

ruby-on-rails - Rails 3ルートでwith_optionsを実行するためのより良い方法はありますか?

これが私のRails2ルートです。

この種のものをRails3に変換するにはどうすればよいですか?同じようにwith_optionsを使い続けますか?する代わりに、場合によってはより言葉になります

私がやっている

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

ruby-on-rails - レールによるルートの管理

Railsのルートファイルをもっとよく理解したいのですが、複雑すぎるので自分ではわかりません。

基本的に私は3つのコントローラーを持っています。それらは、Admin、ManageProduct、およびManageProductCategoryです(2つのモデルがあります:Product、ProductCategory、およびモデルProductCategory has_many / belongs_to products関係)

管理者コントローラーのアクション:

  • インデックス(ログインにリダイレクト)
  • ログインする
  • ログアウト
  • 試み

ManageProductコントローラーのアクション:

  • 索引
  • モデル製品のCRUD(削除、編集、表示、リスト)

ManageProductCategory

  • 索引
  • モデルproduct_categoryのCRUD(削除、編集、表示、リスト)

アプリケーションルートを管理できるようにしたいので、ブラウザに入力すると次のようになります。

等々...

問題は、admin/manage_productがadminコントローラーアクションではないことをレールが理解できるようにルートファイルを設定する方法を理解できないことです...

注意:すべてがすでに機能しています(2つのモデルのCRUDと、標準ではない推奨ルートを介したアクションへのリンク

本当にあなたの助けと注意に感謝します

よろしく

0 投票する
2 に答える
1153 参照

ruby-on-rails - ピリオドを含むパラメーターを使用したRailsルーティング

Railsの古いバージョンでは、次のようなピリオド(通常はフォーマットから分離するために予約されているもの)を含むパラメーターを持つことができます。

(ここに素敵なチュートリアル)

ただし、Rails(2.3.x)の最新バージョンでは、これが失敗することがわかります-:domainはすべてをキャッチしており、/ c / amazon.com.htmlのリクエストが来ると、:formatは空白になります

それを変更する方法について何かアイデアはありますか?

ありがとう、トム

0 投票する
2 に答える
1445 参照

ruby-on-rails-3 - Rails 3アプリは、レーキルートで表示されていてもルートと一致しません

これが私のルートファイルの一部です:

resource :vendor do post 'modify_account' end

レーキルートを実行すると、次の行が生成されます

フォームを読み込んで、フォームのアクションでURLが正しいことを確認できますが、送信すると、アプリがエラーをスローします。

No route matches "/vendor/modify_account"

トラブルシューティングのために何ができるかについての提案はありますか?Firebugは、エラーページのタイプがPOSTであることを確認します。

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

ruby-on-rails - Rails 3 と Rails 2 の「ワイルド コントローラー」ルーティング

Rails 2 の動作と同様に、Rails 3 プロジェクトで名前空間のコントローラーを自動的に解決しようとしています。例 (Rails 2):

リクエスト:

  • /firstは最初のコントローラーにルーティングします
  • /first/secondは 2 番目のコントローラーにルーティングします
  • /first/second/ three は 3 番目のコントローラーにルーティングします

    ただし、Rails 3 では、「ワイルド コントローラー」パスを使用して別のルーティングが行われます。

    リクエスト:

  • /firstは最初のコントローラーにルーティングします
  • /first/secondは first#second にルーティングします
  • /first/second/thirdは first#second :id => 'third' にルーティングされます

    私は、名前空間化されたコントローラーの自動解決のようなものはもう道ではないと考え始めていますか? このような名前空間のコントローラーを自動的に解決する方法を見つけた人はいますか?

    ありがとう!