您可以传递参数link_to
方法。就像是:
link_to "here", info_path(active_tab: "your_active_tab_name")
因此,在您的信息页面视图中,您可以尝试从params[:active_tab]
,因此您可以根据该值设置活动属性。
希望这有帮助,祝你好运
编辑:
如果您使用引导选项卡(https://www.w3schools.com/bootstrap/bootstrap_ref_js_tab.asp https://www.w3schools.com/bootstrap/bootstrap_ref_js_tab.asp),您可以通过将活动类添加到“li”元素来将某些选项卡设置为活动选项卡,如下所示:
<li role="presentation active">
<a href="#advertise" aria-controls="advertise" role="tab" data-toggle="tab">
Advertise
</a>
</li>
因此,无论您在何处放置指向该信息页面的链接,都应该传递一个参数来指示哪个选项卡将处于活动状态,如下所示:
link_to "more info", info_path(active_tab: "advertise")
然后,在信息页面上,检查 params[:active_tab] 以确定哪个选项卡将处于活动状态。就像是:
<ul class="nav nav-tabs" role="tablist">
<li role="presentation #{params[:active_tab]=='about' ? 'active' : '' }">
<a href="#about" aria-controls="about" role="tab" data-toggle="tab">
About
</a>
</li>
<li role="presentation #{params[:active_tab]=='advertise ? 'active' : '' }">
<a href="#advertise" aria-controls="advertise" role="tab" data-toggle="tab">
Advertise
</a>
</li>
... and so it goes on
</ul>
希望这可以清楚地说明!另外,必须测试它,但认为这有效