1

自分でRailsを教えていて、情報が見つからないように見える次の問題に出くわしました。

「Controller」という名前のスキャフォールドを生成して、Rails アプリケーションを壊してしまったようです。アプリケーションはハードウェア コントローラーを追跡するため、格納されているハードウェア コントローラーに関するすべての情報を保持するための足場とデータベースを作成したいと考えました。

私は以下を実行しました:

rails generate scaffold Controller manufacturer:references model:string controller_type:references

アプリケーション Web サイト (Controller は使用しませんが、以前は正常に動作していた他のいくつかのモデルを使用していません) のルート パスを実行rake db:migrateして再読み込みすると、次のエラー ページが表示されます。

ルーティング エラー

一致するルートがありません {:action=>"show", :controller=>"controllers"} 使用可能なルートの詳細については、rake ルートを実行してみてください。

実行rails destroy Controllerしたところ、関連付けられているすべてのフォルダーとファイルがなくなっていますが、それでもエラー ページが表示されます。

どういうわけか誤って組み込みのコントローラー名を上書きしてしまったのでしょうか? これについてご支援いただきありがとうございます。

4

2 に答える 2

0

そのコマンドはおそらく次の行をに追加しましたconfig/routes.rb

 resources :controllers

その行を削除し、サーバーを再起動*してから、もう一度やり直してください。


* ルートはリクエストごとにリロードされるため、再起動する必要はありませんが、時々奇妙なことが起こります。

于 2012-06-25T05:27:46.053 に答える
-1

ルートルートを設定できます[rails]/config/routes.rb

root :to => 'welcome#index'

welcome = controller name

于 2012-06-25T03:36:18.983 に答える