【簡単】renderメソッドの使い方を実際に直面したエラー文と共に解説する※view内のみ
renderメソッドの使い方をメモ。
原因
renderメソッドで指定しているファイル(shared.erb)がapp/views内に存在しない、とのこと。
そこでapp/views内をみてみたところ、sharedファイルはあったものの、名前が_error_messages_html.rebとなっていました。
表示したい部分では、'''<%= render 'shared' %>'''だけになっていたので、
<%= render 'shared/error_messages' %>
に変更する必要がありますね。
<% provide(:title, "Edit user") %>
<h1>Update your profile</h1>
<div class="row">
<div class="col-md-6 col-md-offset-3">
<%= form_for(@user) do |f| %>
<%= render 'shared' %> ←この部分を<%= render 'shared/error_messages' %>に変更する
<%= f.label :name %>
<%= f.text_field :name, class: 'form-control' %>
<%= f.label :email %>
<%= f.email_field :email, class: 'form-control' %>
<%= f.label :password %>
<%= f.password_field :password, class: 'form-control' %>
<%= f.label :password_confirmation, "Confirmation" %>
<%= f.password_field :password_confirmation, class: 'form-control' %>
<%= f.submit "Save changes", class: "btn btn-primary" %>
<% end %>
</div>
</div>
【各種条件】renderメソッドの使い方で理解したこと
・app/viewsフォルダの中で、何度も表示したいhtml.erbファイル(つまり<%= =>で指定するファイル)を別に作成しなければいけない。
・railsの慣習として、app/views/sharedファイルの中にrenderメソッドで表示するファイルを置くことになっている。
・慣習として、renderメソッドで指定されるhtml.erbファイルはファイル名の先頭に_をつける。
ググっても難しい言葉でしか書いていないので、簡潔にまとめました。初学者の参考になれば幸いです。
Author And Source
この問題について(【簡単】renderメソッドの使い方を実際に直面したエラー文と共に解説する※view内のみ), 我々は、より多くの情報をここで見つけました https://qiita.com/KKDDD/items/fbca6f691add610a0f44著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .