未初始化的常量GooglePlaces

时间:2014-07-15 00:23:19

标签: ruby-on-rails ruby gem

我目前正在使用google_places gem尝试访问places API。我使用以下代码来获得结果:

class PlacesController < ApplicationController
  def index
    if params[:search]
        @client = ::GooglePlaces::Client.new(Rails.application.secrets.places_api_key)
        @places = @client.spots_by_query(params[:search])
    end
  end
end

我遇到了uninitialized constant GooglePlaces的错误,如果我的范围不合适,则会被PlacesController::GooglePlaces替换。我认为这是一个范围问题,但我尝试过的任何问题都无法解决问题。我按照回购自述文件中的说明进行操作,并假设我不必将源包含在我网站的lib目录中。我可以从rails控制台正确使用gem。

2 个答案:

答案 0 :(得分:1)

要在rails应用程序中使用此API,您需要使用google_places gem。

添加gem文件并运行bundle install并重启服务器

gem'google_places'

下一步在Google控制台中创建项目并生成密钥。

https://code.google.com/apis/console

https://developers.google.com/places/documentation/

最后重启服务器

答案 1 :(得分:0)

文档说API认证应该是:

@client = GooglePlaces::Client.new(Rails.application.secrets.places_api_key)