ruby-on-rails – 为什么每个方法都需要将循环的值赋给变量?
发布时间:2020-12-17 01:43:41 所属栏目:百科 来源:网络整理
导读:在Rails上工作,发现我对每种方法的理解缺乏知识. 不知道为什么每个方法都需要变量| message | % @messages.each do |message| % h2%= message.title %/h2 %= link_to "View Message",message_path(message),class: "btn btn-default" %% end % 解决方法 在循
在Rails上工作,发现我对每种方法的理解缺乏知识.
不知道为什么每个方法都需要变量| message | <% @messages.each do |message| %> <h2><%= message.title %></h2> <%= link_to "View Message",message_path(message),class: "btn btn-default" %> <% end %> 解决方法
在循环遍历@messages时,您需要某种方式来引用每个元素以使其可用于您的代码. Ruby通过将每个元素一次作为变量传递给块来完成此操作.管道语法在Ruby中用于命名任何块上下文中的块变量,而不仅仅是每个块上下文.
当你在@messages上迭代时,每个元素应该被称为消息,Ruby不会自己决定.您需要明确地做出该决定并在管道中分配变量名称.您不需要调用变量消息.你可以称之为hot_dog.但是你需要将元素分配给某个东西,否则你将无法访问它以及循环的重点是什么? <% @messages.each do |hot_dog| %> <h2><%= hot_dog.title %></h2> <%= link_to "View Message",message_path(hot_dog),class: "btn btn-default" %> <% end %> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |