2016-12-01 5 views
-1

私はscaffoldでindex.html.erbを生成しましたが、それが基本的なHTML構造を持っていないのかどうか疑問に思っていますか?私のindex.html.erbにはHTML構造がないのですか?

これは私のコードです:

<% provide(:title, "Signing Up") %> 
<h1>Signing Up</h1> 

<div class="row"> 
    <div class="col-md-6 col-md-offset-3"> 
    <%= form_for(:reader, url: readers_path) do |f| %> 
     <%= f.label :email %><br> 
     <%= f.email_field :email, class: 'form-control' %> 
     </p> 
     <p> 
     <%= f.label :password %><br> 
     <%= f.password_field :password_digest, class: 'form-control' %> 
     </p> 
     <%= f.submit "Signing Up", class: "btn btn-primary" %> 
    <% end %> 

    </div> 
</div> 

私は等の通常のHTML、<body><head>タグが表示されていない私はそれを追加したり、それが必要ではないことはできますか?

+0

ためdocsを参照してください。チェックマーク :) –

答えて

5

これは必須ではありません。 Railsでは、ビュー/レイアウトの下にapplication.html.erbファイルがあります。これは、ページのレンダリングのデフォルトとして使用されます。

このファイルには、通常のHTML構造(DOCTYPE、頭部、身体など)が表示されます。

ベースレイアウトを見つけるために、Railsはapp/views/layoutsのファイルをコントローラと同じベース名で探します。

たとえば、PostsControllerクラスのレンダリングアクションにはapp/views/layouts/posts.html.erbが使用されます。

コントローラ固有のレイアウトがない場合、Railsは足場を生成するときに起こっているものであるapp/views/layouts/application.html.erbを使用します。

これはapplication.html.erbは、新鮮なプロジェクトで、一般的に次のようになります。私の答えは、クリックすることでaceptedとしてそれをマークしてください、助けた場合

<!DOCTYPE html> 
<html> 
<head> 
    <title></title> 
    <%= stylesheet_link_tag "application", media: "all", "data-turbolinks-track" => true %> 
    <%= javascript_include_tag "application", "data-turbolinks-track" => true %> 
    <%= csrf_meta_tags %> 
</head> 
<body> 

<%= yield %> #Content from the views is shown 

</body> 
</html> 

は、より多くの情報

関連する問題