抱歉,我有一个Rails新手问题。在我的Rails应用程序中,如何从视图中调用控制器中定义的方法?例如,假设我编写了一个检索股票信息的自定义方法。在我看来,我希望有一个常规的HTML按钮,点击后,将调用我的自定义方法并填充股票结果。
怎么做的?我环顾四周,找不到直截了当的方法。但我确定我在这里遗漏了一些东西。
答案 0 :(得分:21)
编辑:我用标题提出问题,这不是问题所在。问题标题的答案位于底部
你想要的是一个ajax请求,它是一个单独的控制器动作。你需要:
javascript请求路线并在点击按钮时填充其DOM对象
一个动作,返回ajax请求所要求的内容
有很多方法可以做到这一点,但是如果你搜索“howto rails ajax”,你会发现很多教程可以帮助你。我喜欢的一种方式叫做pjax:https://github.com/rails/pjax_rails
旧答案......
声明helper_method
,如下:
在你的控制者中:
private
def find_stock
...
end
helper_method :find_stock
在您看来:
<% find_stock.each do |stock| -%>
答案 1 :(得分:1)
您可以查看button_to
查看助手
这是一种方式,当然,您可以使用远程选项通过AJAX请求执行此操作。