如何在不使用表单的情况下将按钮值从视图传递到控制器

时间:2016-03-11 19:39:09

标签: ruby-on-rails

我试图找出如何使用从视图到相应控制器的按钮值。我有三个按钮,我将它们分组。根据用户选择,我想做不同的功能(例如:列出任务,表单添加任务..等等)。为此,我想将按钮值传递给控制器​​。

<div class="btn-group btn-group-justified">
  <a href="#" class="btn btn-primary">Task Lists</a>
  <a href="#" class="btn btn-primary">Task Category</a>
  <a href="#" class="btn btn-primary">Add Task</a>
</div>

我不确定是否有比按钮组更好的方法。我也不熟悉javascript。 为清楚起见,我在页面左侧有已设计的用户信息。这些按钮位于页面右侧的顶部。选择按钮后,页面右侧应根据选择进行更改/重新加载。

3 个答案:

答案 0 :(得分:0)

您可以使用链接转到所需的控制器操作(如果我正确理解您的问题)。您将使用路径/路由到您想要的特定操作。它看起来像这样:

<a href="/tasks/lists" class="btn btn-primary">Task Lists</a>

或者您可以使用link_to方法在rails方向上执行此操作:

<%= link_to "Task Lists", tasks_lists_path, class: "btn btn-primary" %>

同样,这取决于您使用的路线是什么。如果你想通过链接传递参数,它会变得有点复杂,但并不多。

有关详细信息:http://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html#method-i-link_to

答案 1 :(得分:0)

一个选项是在单击按钮时触发ajax post请求并将数据发送到特定的控制器操作。

也可以通过link_to传递params。

答案 2 :(得分:0)

您可以尝试以下

      <div class="btn-group btn-group-justified">
      <a href="/controllor/action?value=data" class="btn btn-primary">Task Lists</a>
      <a href="/controllor/action?value=data" class="btn btn-primary">Task Category</a>
     <a href="/controllor/action?value=data" class="btn btn-primary">Add Task</a>
     </div>