我正在为我的项目使用ruby geocoder gem,随着项目的不断发展,我开始考虑连接到Google API密钥.将此添加到项目后:
Geocoder.configure do |config|
# geocoding service (see below for supported options):
config.lookup = :google
# to use an API key:
config.api_key = 'my_key'
# geocoding service request timeout, in seconds (default 3):
config.timeout = 5
end
Run Code Online (Sandbox Code Playgroud)
我收到Google Geocoding API错误:请求被拒绝.当我启动应用程序时.从阅读开始,如果他们选择继续使用宝石,似乎其他人转向雅虎.我可以将gem配置为使用google api密钥吗?主要是,我想留意每日查询的数量,以避免超过限制.
我在Rails 3应用程序中有一个详细信息页面,它有几个实例变量.例如,我的视图有以下实例:
@product
@program
@action
...etc...
Run Code Online (Sandbox Code Playgroud)
其中一些是单个字符串,一些是数组(来自外部API的请求的结果).总的来说,数据来自至少3个型号.
我的问题是:合并实例变量的最佳方法是什么,这样我的视图和控制器看起来更干净(不牺牲可读性)?我理解这个问题是开放式的,每个人都有自己的偏好,但有哪些选择呢?我正在考虑将实例变量组合到一个对象中,以便前面的代码变成这样:
Details.product
Details.program
Details.action
Run Code Online (Sandbox Code Playgroud)
非常感谢!
更新:走对象路线,是否有任何实际实现它的好例子(github,博客文章)?
ruby ruby-on-rails object instance-variables ruby-on-rails-3