use*_*344 5 google-analytics ruby-on-rails
尝试使用 Legato gem 从 Google Analytics 获取查询结果(按照之前的建议,我去了那里 + 一些研究)。定义我的查询似乎很简单,但是我无法理解如何实际获得结果。阅读自述文件显示了如何构建一些“构建块”,但我无法获得可以从中读取结果的对象。
可能我漏掉了什么,查询结果应该直接写到模型(DB)中,这不是我想要的(我想先过一遍)。也许这就是我什么都没看到的原因。
那么有人可以分享一个如何阅读结果的例子吗?例如,只需将页面浏览量打印到屏幕上。
谢谢
所以这是我发现的使用它的方式:您创建一个定义查询“模型”的类(与 Active-Model 返回关系一样,您也可以在此处进行连接)。在这个例子中:
另请注意,过滤器和结果仅返回一个“查询”(就像 ActiveModel::Relation),其中执行是通过调用其上的某些内容来完成的,例如 'each' 或 'to_a' 等。
class Pageviews
extend Legato::Model
metrics :pageviews, :uniquePageviews
dimensions :pagePathLevel1
filter(:by_index_in_path_level_1) {|page_path_level1| contains(:pagePathLevel1, 'index')}
def self.query(profile, start_date, end_date)
Pageviews.results(profile,
:start_date => start_date,
:end_date => end_date
)
# Just for reference, sorting descending by pageviews is done by: :sort => '-pageviews'
end
def self.query_index(profile, start_date, end_date)
Pageviews.by_index_in_path_level_1.results(profile,
:start_date => start_date,
:end_date => end_date
)
end
end
Run Code Online (Sandbox Code Playgroud)
准备好后,您可以执行以下操作:
Pageviews.query(profile, start_date, end_date).each do |result|
# Just print the pageviews & unique-pageviews, for example
puts result.try(:pageviews)
puts result.try(:uniquePageviews)
end
Run Code Online (Sandbox Code Playgroud)
最后,我建议您首先使用Google Analytics Query Explorer 进行探索。
我希望你能发现这个例子有帮助
| 归档时间: |
|
| 查看次数: |
1881 次 |
| 最近记录: |