Railsのrenderメソッドのpartialオプションの理解について、理解が曖昧なので、教えていただきたいです。
[下記の定義]
'users' ➡️ _users.html.erbへのパス
users: @users ➡️ ローカル変数名: 渡す値
@usersはindex.html.erbのインスタンス変数と理解できるのですが、ローカル変数と思われるusersはどこに定義してあるもなのでしょうか?
根本的な理解の間違いでしたら申し訳ございませんが、教えていただけると幸いです。
よろしくお願いいたします。
<%= render 'users', users: @users %>
app/controllers/users_controller.rb
indexの部分
def index @users = User.order(id: :desc).page(params[:page]).per(25) end
app/views/users/index.html.erb
<%= render 'users', users: @users%>
app/views/users/_users.html.erb
<% if users.any? %> <ul class="list-unstyled"> <% users.each do |user| %> <li class="media"> <img class="mr-2 rounded" src="<%= gravatar_url(user, { size: 50 }) %>" alt=""> <div class="media-body"> <div> <%= user.name %> </div> <div> <p><%= link_to 'View profile', user_path(user) %></p> </div> </div> </li> <% end %> </ul> <%= paginate users %> <% end %>
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/07/30 05:40