0

私はRuby on Railsが初めてで、問題があります。サーバーを見つめてブラウザrails serverでページ www.localhost:3000 に移動すると、RORのデフォルトページですべて正常に動作しますが....コントローラーrails generate controller demo index を作成してページに移動した 後www.localhost:3000/demo/indexlocalhost:3000/demo-同じ-何もありません。ページが存在しないようです、空白のページのみ index.html.erb コードを変更しようとしましたが、変更 <h1>Hello World</h1> なし ROR で練習したいのですが、そのバグのために実行できません。

作業環境:Windows7 64bit

データベース: MySQL

4

8 に答える 8

1

アクションに対応するビューが必要です。

コントローラーが呼び出されDemo、アクションがindexそうである場合

# app/controllers/demo_controller.rb
class DemoController < ApplicationController

  def index
  end

end

ビュー ファイルは にある必要がありますapp/views/demo/index.html.erb

于 2013-03-18T23:43:53.483 に答える
0

削除しましたか

app_root
--public
----index.html

まだ?

Rails は、ビューからファイルをビルドする前に、最初に public フォルダーで一致するファイルを探します。

于 2013-03-23T01:56:34.743 に答える
0

indexアクションはコントローラーの基本アクションです。ただ試してみてください:

http://localhost:3000/demo

インデックスにアクセスします。

デフォルトでは、routes/demo/indexshowの ID を持つアクションですindex

于 2013-03-18T23:21:42.800 に答える
0

そこでJoãoが示したように、そのためのビューも必要になります。さらに、コントローラーのルートを削除public/index.htmlし、最後に追加します。

scaffold のRails スタート ガイドを作成していた場合は、既にそこにルートがあります。

于 2013-05-09T17:11:42.273 に答える
0

確実に

views/layout/application.html.erb にはyieldがあり、index.html.erbにはいくつかのテキストがあります

于 2013-03-19T05:27:38.433 に答える
0

あなたのroutes.rbをチェックしてください

root :to => 'demo#index'

に行くhttp://localhost:3000/

于 2013-03-19T08:24:10.783 に答える
0

config/routes.rb ファイルからこの行のコメントを外します

  match ':controller(/:action(/:id))(.:format)'

から index.html ファイルを削除しますpublic/index.html

于 2013-03-19T08:29:43.380 に答える
0

まず、index.htmlパブリック フォルダーからファイルを削除するか、名前を変更します。

次にroot :to => 'demo#index'、ルートファイルに設定します。

次に、このコマンドを使用してサーバーを再起動します。rails sデフォルトでは、サーバーはポート 3000 で実行されます。

単に入力http://localhost:3000/するか、http://localhost:3000/demo/index

于 2013-03-19T08:32:44.633 に答える