面包屑导航(Breadcrumb)是一种用于显示用户当前在网站中的位置的导航工具。在 RESTful Rails 应用程序中,面包屑导航可以帮助用户了解他们在应用程序中的位置,并允许他们轻松地导航到上级或相关资源。
在 Rails 应用程序中,可以使用如下简单的方法创建一个面包屑导航:
application_controller.rb
中添加一个 add_breadcrumb
方法,用于添加面包屑导航:class ApplicationController< ActionController::Base
before_action :add_breadcrumb
def add_breadcrumb(name = nil, url = nil)
@breadcrumbs ||= []
if name && url
@breadcrumbs << { name: name, url: url }
end
end
end
application.html.erb
中添加一个面包屑导航的视图:<div class="breadcrumb">
<ul>
<li><%= link_to "Home", root_path %></li>
<% @breadcrumbs.each do |crumb| %>
<li><%= link_to crumb[:name], crumb[:url] %></li>
<% end %>
</ul>
</div>
before_action
中添加面包屑导航:class ProductsController< ApplicationController
before_action :add_breadcrumb, only: [:index, :show]
def index
@products = Product.all
end
def show
@product = Product.find(params[:id])
add_breadcrumb @product.name, product_path(@product)
end
end
这样,在每个视图中就会显示一个简单的面包屑导航,允许用户轻松地导航到应用程序中的不同部分。
领取专属 10元无门槛券
手把手带您无忧上云