問題タブ [nested-routes]

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 に答える
250 参照

ruby-on-rails-3 - 深くネストされたポリモーフィック リソースは、努力する価値がありますか?

私は自分の開発の段階で、深く (>1) ネストされたリソースは努力する価値がないと考えています。

私はこのようなものを持っています:

キッカーは、コメントが他のリソースに対して多態的であることです。私の意図は、~/first-level/34/comments、~/first-level/34/second-level/56/third-level/comments などのようなきれいな URL にすることでした。

これまでの問題は、入れ子になったときのポリモーフィック ルートが問題を引き起こすだけです。例として、Ryan Bates Railscasts をいくつかフォローしています。たとえば、最初のレベルで polymorphic_path を使用しようとすると、正常に動作し、次のようになります。

しかし、同じコードは次のように~/first-level/34/second-level/23失敗します:

undefined method 'second-level_comment_path' for #<#<Class:0x007fcc4acfbe58>:0x007fcc4ae73d08>しかし、ルートを見ると、実際の名前付きルートはfirst-level_second-level_comment. second-level_comment_path基本的にエイリアスするために手動で作成しようとしましfirst-level_second-level_commentたが、それを機能させることもできなかったようです。

誰かがここで明らかなエラーを指摘できない限り、私はこのアプローチ (http://weblog.jamisbuck.org/2007/2/5/nesting-resources) に傾いており、これらのネストを解除するだけです。階層を表示するためのブレッドクラム スタイルのナビゲーションがあるので、それで十分であり、見れば見るほど URL が扱いにくくなります。

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

ruby-on-rails - ネストされたモデルの Rails ルート

ネストされた Rails モデルがあります。

電話すると

「/frontend/items」パスに移動しようとします。

代わりに「/items」に移動する方法はありますか(継承された「/frontend」なしで)

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

ruby-on-rails - Gives のフォームでネストされたリソース: 引数の数が間違っています (0 に対して 1)

ネストされたルートの編集ページを作成しようとしています。

URL は次のようなものです。http://localhost:3000/clients/2/notes/3/edit

私のroutes.rb:

私の編集コントローラーで:

そして私のedit.html.erbファイル

これを行って編集ページをロードすると、次のようになります。 ここに画像の説明を入力

スタック オーバーフローについて調べてみましたが、ネストされたルートを使用する場合、それらはすべて 2 つの引数を持ちます。ここで行う正しいことは何ですか? そして、なぜ違うのですか?

アップデート:

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

ruby-on-rails - ネストされたコントローラー / 名前空間のパス ヘルパー

私はルート構造を持っています:

rake ルートの出力:

Admin は名前空間です。

scaffold によって生成されたフォームは次のようになります

に変更= form_for @currencyしまし= form_for admin_currencies_path(@currency)たが、フォームのアクションが /admin/currencies ではなく /admin/currencies/new であるため、まだ失敗しています。

私は何を間違っていますか?

ありがとう。

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

ruby-on-rails-3 - ネストされたリソースをエイリアスにルーティングするにはどうすればよいですか?

ネストされたルートの深さを1レベル以上にすることはお勧めできませんが、次のようになります。

name_routeを使用するためにエイリアスを呼び出す方法はありますか?

したがって、使用する代わりに

私は次のようなものを使用します

ちょっとした考え...

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

ruby-on-rails - Rails:カスタムネストされたコントローラーアクション

カスタムのネストされたコントローラーアクションを設定したいのですが、ルーティングがわかりません。

次のエラーが発生し続けます

ルート.rb

index.html.rb

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

ruby-on-rails-3 - Rails: ネストされたリソース ルートが機能しない

次のルートが定義されています。

上記のリソースのルート (rake ルート) の 1 つが次のように表示されます。

new_employee_question GET /employees/:employee_id/questions/new(.:format) questions#new

しかし、私がこれを行うとき= link_to 'New Question', :new_employee_question

次のエラーが表示されます。

No route matches {:action=>"new", :controller=>"questions"}

必要なアクション メソッドでQuestionsController&を定義しました。EmployeesController

Railsコンソールで次のことも試しました:

Rails.application.routes.recognize_path(app.new_employee_question_path)

...次のエラーが生成されます。

ActionController::RoutingError: No route matches {:controller=>"questions"}

Rails を使用しています3.2.6。私が間違っていることはありますか?

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

ruby-on-rails-3 - Ruby on Rails 3 のネストされたルート: 間違ったアクション ルート

チームとプロジェクトの 2 つのモデルがあります。

ルート.rb

そして2問!

1- http://guides.rubyonrails.org/routing.htmlによると、teams/:team_id/projects/:id パスを取得することを期待しています。しかし、そうではありません。

レーキルート

だから私はそれを機能させるためにルートに名前を付ける必要がありました

では、名前を付ける代わりに Rails ヘルパー メソッドを利用するにはどうすればよいでしょうか?


2- プロジェクトのショーアクションビューで、デバッガーは次のパラメーターをスローします。

これは問題ありません。しかし、「new_team_projects_path」URL をクリックすると、同じビューにリダイレクトされ、デバッガーは次のパラメーターをスローします。

新しいアクションにはリダイレクトされませんが、ID として「new」が使用されました。なぜ?

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

ruby-on-rails - ネストされた短いレール ルート

次のようなルートがあります。

somedomain.com/cities/prague/places/astronomical-clock

私は次のようなことができることを知っています:

しかし、ネストされた短いルートを持つにはどうすればよいでしょうか?

すなわち。/プラハ/天文時計?

そして、デフォルトの url_for メソッドを上書きする場所を作成できますか?

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

ruby-on-rails-3 - ビューのテストで、ネストされたリソースの「ルートが一致しません」と表示される

Trainingモデルの下にネストされたモデルがありdevise Userます。

/config/routes.rb

>レーキルート

ビューをテストすると、次の出力が得られます。

サイズが大きくなりすぎるため、すべてのテストとすべてのレイアウト ファイルは投稿しません。代わりに、1 つのビューのテストとレイアウト ファイルを投稿し、修正を他のビューに拡張しようとします。

のテストtraining#index

/spec/views/trainings/index.html.erb_spec.rb

/app/views/index.html.rb

ルートが一致しないことを示しますが、ルートは存在します。なぜそれが起こっているのですか?