首页 > 解决方案 > Rails 5 如何从咖啡脚本文件中获取 Ajax api 调用的响应到 Rails 视图中

问题描述

在我的 movies.coffee 文件中,我有这段代码,它正在进行 ajax 调用以获取电影列表。

$.ajax 
url: 'https://api.themoviedb.org/3/genre/movie/list?api_key=someapikey',
success: (data) ->
     response = data

然后,我想将调用的 json 响应获取到某种 ruby​​ 对象中,然后我可以循环并在多个引导卡中的 movies.index.html.erb 页面上显示它的内容。

例如放到一个@movies 实例变量中,我可以在其中调用@movies.title、@movies.genre 等等。

我无法将 api 数据附加到引导卡中,因为我还有其他数据也将在那里显示。

标签: ruby-on-railsajaxapicoffeescriptruby-on-rails-5

解决方案


我想,你可以使用你的控制器索引方法。你(们)能做到

begin
    @movies = RestClient.get('https://api.themoviedb.org/3/genre/movie/list?api_key=someapikey')
rescue RestClient::ExceptionWithResponse => err
    @movies = nil
    @errors = err.response
end

您将在 @movies 变量中获取您的数据,然后您可以在 html 中填充它


推荐阅读