我刚开始学习rails。我对以下部分有疑问。
控制器:
book_controller.rb
class BookController < ApplicationController
end
查看:
list.html.erb
<% if @books.blank? %>
<p>There are not any books currently in the system.</p>
<% else %>
<p>These are the current books in our system</p>
<ul id="books">
<% @books.each do |c| %>
<li><%= link_to c.title, {:action => 'show', :id => c.id} -%></li>
<% end %>
</ul>
<% end %>
路由器:
get 'list' => 'book#list'
当我转到localhost:3000/list
时,它会显示list.html.erb
的内容。当我在Controller中没有list
动作时,会发生什么?我的理解怎么错了?
答案 0 :(得分:4)
如果书籍控制器中定义了@books,则执行此代码没有问题,因为list.html.erb已经在books文件夹中定义,路由设置为
get 'list' => 'book#list'
答案 1 :(得分:0)
集成了Ruby MVC结构,以便在创建变量@varibale
时,它已在视图中可用。