link_to
是 Ruby on Rails 框架中的一个辅助方法,用于生成超链接标签。如果你想在链接中向下传递参数,可以通过几种不同的方式来实现。
在 Rails 中,link_to
方法通常用于创建 HTML 的 <a>
标签。你可以传递一个或多个参数给这个方法,包括 URL 和 HTML 属性。
?key=value
形式的查询字符串来传递参数。link_to
中指定这些参数。link_to
的第二个参数,这样可以更清晰地组织你的 URL 参数。<%= link_to 'Link Text', some_path(param1: 'value1', param2: 'value2') %>
这将生成如下 HTML:
<a href="/some_path?param1=value1&param2=value2">Link Text</a>
假设你有如下路由定义:
get '/posts/:id/comments/:comment_id', to: 'comments#show'
你可以这样传递参数:
<%= link_to 'View Comment', post_comment_path(@post.id, @comment.id) %>
这将生成:
<a href="/posts/1/comments/2">View Comment</a>
<%= link_to 'Link Text', { controller: 'controller_name', action: 'action_name', param1: 'value1' }, method: :post %>
这将生成:
<a rel="nofollow" data-method="post" href="/controller_name/action_name?param1=value1">Link Text</a>
link_to
传递表单数据到一个预览页面。link_to
传递当前页码或其他筛选条件。如果你在使用 link_to
时遇到参数没有正确传递的问题,可以检查以下几点:
routes.rb
文件,确认路由是否支持你想要传递的参数。link_to
中使用的参数名称与控制器中期望的参数名称一致。通过以上方法,你应该能够解决在使用 link_to
传递参数时遇到的问题。
领取专属 10元无门槛券
手把手带您无忧上云