Rails 3如何处理查询字符串的接收端

发布于 2024-12-22 19:41:04 字数 429 浏览 1 评论 0原文

我有两个简单的链接,

<h3><%= link_to "Brand Awards", new_recommendation_path(:category => "Brand" ) %></h3>
    <h3><%= link_to "Business Awards", new_recommendation_path(:category => "Business" ) %></h3>

这些链接都转到相同的视图,但它们显然将两个单独的值传递给类别。

如何使用这些在我的 new_recommendation 视图中运行 if 语句。

我基本上需要做: 如果类别=“品牌”做abc,elsif类别=“商业”做xyz

我是否走在正确的道路上?

I have two simple links

<h3><%= link_to "Brand Awards", new_recommendation_path(:category => "Brand" ) %></h3>
    <h3><%= link_to "Business Awards", new_recommendation_path(:category => "Business" ) %></h3>

these links both go to the same view but they obviously pass two separate values to category.

How do use these to run an if statement in my new_recommendation view.

I need to essentially do:
if category = "Brand" do abc, elsif category = "Business" do xyz

Am I even on the right track?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

淡墨 2024-12-29 19:41:04

该路线(在另一个答案中提到)不是必需的(尽管很不错)。如果您不设置路线,它将仅显示为查询字符串参数,例如: /recommendation?category=Brand

无论哪种方式,您都可以只引用参数,例如;

<% case params[:category]
   when 'Brand' %>
  show brand stuff
<% when 'Business' %>
   show business stuff
<% else %>
   show default something else
<% end %>

The route (mentioned in the other answer) isn't necessary (though a nice touch). if you don't set up the route, it will just appear as a query-string param eg: /recommendation?category=Brand

Either way you can just refer to the params eg;

<% case params[:category]
   when 'Brand' %>
  show brand stuff
<% when 'Business' %>
   show business stuff
<% else %>
   show default something else
<% end %>
圈圈圆圆圈圈 2024-12-29 19:41:04

我认为你需要在routes.rb中设置一个路由,例如

match "recommendation/:category", controller: 'recommendation', action: 'new', category: :category

然后,在你的控制器中,你可以在params[:category]中找到类别,并将其传递给视图。

I think you need to set up a route in routes.rb, such as

match "recommendation/:category", controller: 'recommendation', action: 'new', category: :category

Then, in your controller, you can find the category in params[:category], and pass that to the view.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文