抱歉,我有一个Rails新手问题。在我的Rails应用程序中,如何从视图中调用定义在我的控制器中的方法?例如,假设我编写了一个自定义方法来检索股票信息。在我的视图中,我想要一个普通的 HTML 按钮,点击该按钮后将调用我的自定义方法并填充股票结果。
这该怎么做?我查看了一些资料,但没有找到直接的方法。但我相信我可能漏掉了某些东西。
抱歉,我有一个Rails新手问题。在我的Rails应用程序中,如何从视图中调用定义在我的控制器中的方法?例如,假设我编写了一个自定义方法来检索股票信息。在我的视图中,我想要一个普通的 HTML 按钮,点击该按钮后将调用我的自定义方法并填充股票结果。
这该怎么做?我查看了一些资料,但没有找到直接的方法。但我相信我可能漏掉了某些东西。
编辑:我根据问题的标题回答了问题,而这并不是问题的本意。你问题标题的答案在底部
你需要的是一个ajax请求,这是一个独立的控制器动作。你需要:
JavaScript通过点击按钮请求路由并填充DOM对象
返回ajax请求所需内容的动作
有很多方法可以做到这一点,但如果你搜索“如何使用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| -%>