0

サイトでこのルーティング エラーが発生しています。関連する他の質問を調べましたが、まだ解決策が見つかりません。

No route matches {:action=>"show", :controller=>"businesses", :user_id=>3}

user (ログインの詳細を含む)、business (ユーザーに関連する情報を含む: 1 人のユーザーには 1 つのビジネスがあります)、business_hours (1 つのビジネスには多くの business_hours があります) の 3 つのモデルがあります。

ここに私のルートがあります:

  devise_for :users

get "home/index"
  root :to => "home#index"

  resources :users do
    resources :businesses do
      resources :business_hours
    end
  end

編集:

ホームページ (localhost:5000) にアクセスしようとするとエラーが発生します。私は現在サインインしています。rake ルートを実行しましたが、ルートはそこにあるようです:

                   user_business GET    /users/:user_id/businesses/:id(.:format)                                  businesses#show
4

1 に答える 1

0

あなたが言及したルートは、ビジネスのIDである4番目の引数を期待しています。うまくいくビジネスのIDを渡してみてください

user_business GET    /users/:user_id/businesses/:id(.:format) 

理想的には、これをインデックスに使用する必要があります

user_businesses GET    /users/:user_id/businesses(.:format)                                      

あなたの質問はそれほど明確ではありません。それ以外の場合は正確な回答ができたはずです

于 2013-04-28T15:08:23.883 に答える