0

生成されたビュー パスに問題があります。私のroutes.rbは次のようになります

Project::Application.routes.draw do
  resources :project_templates do
    resources :awards
  end
...

このように project_template.rb

class ProjectTemplate < ActiveRecord::Base

  belongs_to :user
  has_many :awards #...

  attr_accessible :user_id #...

  ...

award.rb いいね

class Award < ActiveRecord::Base
  belongs_to :project_template
  attr_accessible :tier #..
  ...

生成されたビュー リンクは次のようになります。awards_path この方法ではアプリが機能せず、すべてをproject_template_awards_path

ジェネレーターがプレフィックスなしでこれを行った理由はわかりませんが、project_templateこれを回避する方法を見つけるのを手伝ってください. 不足しているサフィックスをパスに追加するジェネレーター コマンドがあるのではないでしょうか? 私は別のクラスrequirement.rbでも同じことをしなければならず、そのためのビューもあるので、私の問題を解決するための魔法のコマンドがあることを願っています.


rake routes | grep awards次の出力が得られます。

project_template_awards     GET     /project_templates/:project_template_id/awards(.:format)          awards#index
                            POST    /project_templates/:project_template_id/awards(.:format)          awards#create
new_project_template_award  GET     /project_templates/:project_template_id/awards/new(.:format)      awards#new
edit_project_template_award GET     /project_templates/:project_template_id/awards/:id/edit(.:format) awards#edit
project_template_award      GET     /project_templates/:project_template_id/awards/:id(.:format)      awards#show
                            PUT     /project_templates/:project_template_id/awards/:id(.:format)      awards#update
                            DELETE  /project_templates/:project_template_id/awards/:id(.:format)      awards#destroy
4

2 に答える 2

0

プロジェクトディレクトリに入力$ rake routesして、そこに出力を投稿していただけますか? アワード リソースの award_path は引き続き表示されますか?

PS。app/ に対応するコントローラーがなくてもルート リソースを作成できるため、コントローラーはここでは何もしません。

于 2013-04-13T22:30:53.083 に答える