Ruby on rails 轨道:设置默认值';当前';用于导航的css类?
在这里使用解决方案后,这是一个问题 例如,我有Ruby on rails 轨道:设置默认值';当前';用于导航的css类?,ruby-on-rails,Ruby On Rails,在这里使用解决方案后,这是一个问题 例如,我有localhost/action1和localhost/action2,每个都有一个导航按钮。 当用户位于任一页面时,它都非常有效。在这种情况下,其中一个按钮将具有“当前”css类 但是,如果我将root\u path设置为其中一个,假设是/action1,那么当用户访问localhost时,action1的按钮将不会有当前的类 如何解决将缺少的当前css类设置为根路径时添加该类的问题?您可能希望通过以下方式突出显示导航菜单-我确信无论设置根路径如
localhost/action1
和localhost/action2
,每个都有一个导航按钮。
当用户位于任一页面时,它都非常有效。在这种情况下,其中一个按钮将具有“当前”css类
但是,如果我将root\u path
设置为其中一个,假设是/action1
,那么当用户访问localhost
时,action1
的按钮将不会有当前的类
如何解决将缺少的当前
css类设置为根路径
时添加该类的问题?您可能希望通过以下方式突出显示导航菜单-我确信无论设置根路径如何,该操作都有效:
<ul>
<li class="<%= "current" if params[:controller] == "home" %>">Home</li>
<li class="<%= "current" if params[:controller] == "action1" %>">Action 1</li>
<li class="<%= "current" if params[:controller] == "action2" %>">Action 2</li>
</ul>
与
取决于您希望突出显示的级别。我在最近的一个项目中使用了这个设置,它对我很有用。祝你好运 您可能希望通过以下方式突出显示导航菜单-我敢肯定,无论设置根路径如何,这都是有效的:
<ul>
<li class="<%= "current" if params[:controller] == "home" %>">Home</li>
<li class="<%= "current" if params[:controller] == "action1" %>">Action 1</li>
<li class="<%= "current" if params[:controller] == "action2" %>">Action 2</li>
</ul>
与
取决于您希望突出显示的级别。我在最近的一个项目中使用了这个设置,它对我很有用。祝你好运 您可能希望通过以下方式突出显示导航菜单-我敢肯定,无论设置根路径如何,这都是有效的:
<ul>
<li class="<%= "current" if params[:controller] == "home" %>">Home</li>
<li class="<%= "current" if params[:controller] == "action1" %>">Action 1</li>
<li class="<%= "current" if params[:controller] == "action2" %>">Action 2</li>
</ul>
与
取决于您希望突出显示的级别。我在最近的一个项目中使用了这个设置,它对我很有用。祝你好运 您可能希望通过以下方式突出显示导航菜单-我敢肯定,无论设置根路径如何,这都是有效的:
<ul>
<li class="<%= "current" if params[:controller] == "home" %>">Home</li>
<li class="<%= "current" if params[:controller] == "action1" %>">Action 1</li>
<li class="<%= "current" if params[:controller] == "action2" %>">Action 2</li>
</ul>
与
取决于您希望突出显示的级别。我在最近的一个项目中使用了这个设置,它对我很有用。祝你好运 您可以查询路由器本身,为您提供当前路径的控制器
和操作
,只需将其与参数
中的当前值进行比较即可
def nav_link(text, path)
recognized = Rails.application.routes.recognize_path(path)
klass = "current" if recognized[:controller] == params[:controller] &&
recognized[:action] == params[:action]
content_tag(:li, class: klass) do
link_to(text, path)
end
end
您可以查询路由器本身,为您提供当前路径的控制器
和操作
,只需将其与参数
中的当前值进行比较即可
def nav_link(text, path)
recognized = Rails.application.routes.recognize_path(path)
klass = "current" if recognized[:controller] == params[:controller] &&
recognized[:action] == params[:action]
content_tag(:li, class: klass) do
link_to(text, path)
end
end
您可以查询路由器本身,为您提供当前路径的控制器
和操作
,只需将其与参数
中的当前值进行比较即可
def nav_link(text, path)
recognized = Rails.application.routes.recognize_path(path)
klass = "current" if recognized[:controller] == params[:controller] &&
recognized[:action] == params[:action]
content_tag(:li, class: klass) do
link_to(text, path)
end
end
您可以查询路由器本身,为您提供当前路径的控制器
和操作
,只需将其与参数
中的当前值进行比较即可
def nav_link(text, path)
recognized = Rails.application.routes.recognize_path(path)
klass = "current" if recognized[:controller] == params[:controller] &&
recognized[:action] == params[:action]
content_tag(:li, class: klass) do
link_to(text, path)
end
end
嗯,为什么这么难比较?也许比较request.path和link path会更容易(如果您使用内置方法来获取link的路径)?嗯,为什么比较这么困难?也许比较request.path和link path会更容易(如果您使用内置方法来获取link的路径)?嗯,为什么比较这么困难?也许比较request.path和link path会更容易(如果您使用内置方法来获取link的路径)?嗯,为什么比较这么困难?也许比较request.path和link path会更容易(如果您使用内置方法获取link的路径)?是否可以识别像localhost/posts?number=7这样的查询。可能识别[:number]
?@cqcn1991localhost/posts?number=7
和localhost/posts
就路由器而言是相同的。如果您想考虑查询参数,您需要自己获取并打开它们(request.query\u parameters
为您提供{“number”=>“7”}
)。是否可以识别像localhost/posts?number=7这样的查询。可能识别[:number]
?@cqcn1991localhost/posts?number=7
和localhost/posts
就路由器而言是相同的。如果您想考虑查询参数,您需要自己获取并打开它们(request.query\u parameters
为您提供{“number”=>“7”}
)。是否可以识别像localhost/posts?number=7这样的查询。可能识别[:number]
?@cqcn1991localhost/posts?number=7
和localhost/posts
就路由器而言是相同的。如果您想考虑查询参数,您需要自己获取并打开它们(request.query\u parameters
为您提供{“number”=>“7”}
)。是否可以识别像localhost/posts?number=7这样的查询。可能识别[:number]
?@cqcn1991localhost/posts?number=7
和localhost/posts
就路由器而言是相同的。如果您想考虑查询参数,您需要自己获取并打开它们(request.query\u parameters
为您提供{“number”=>“7”}
)。