我有一个用Ruby on Rails构建的马搜索站点 - FindHorsesForSale.net,并希望构建一个活动记录系统,告诉我: - 列表在搜索结果中出现的次数 - 列表在详细信息页面上出现的次数 - 搜索结果中每个位置的点击率
该应用程序托管在Heroku上。有关如何构建可扩展的内容以回答上述问题的任何建议?
答案 0 :(得分:1)
我认为最佳方式是另一个Model
用于计算点击次数,包括hit_type
字段,以区分搜索中的点击次数和配置文件的点击次数。该模型可能如下所示:
Hit hit_type:string user_agent:string ip:string horse_id:integer`
然后,您通过Hit
将Horse
模型与has_many
模型相关联,并在搜索操作中为每个找到的马创建hit
的新对象,每个配置文件视图的新命中对象。唯一的区别是hit_type,例如可以是“搜索”和“配置文件”。然后你可以在Hit
模型中编写范围:
scope :searched, where("hit_rype = ?", "search")
scope :viewed, where("hit_type = ?", "view")
你可以轻松查看马匹的观点:
horse.hits.searched.count # returns count of views
horse.hits.viewed # returns count of profile views
希望这能帮到你!
//我看了你的网站。如果你在网站上做生意,你应该知道SEO,所以你找到了!你的所有域名都使用camelCase,但google doenst识别域名,单词中的camelCase,......只是一个提示