计算链接点击次数

发布于 2024-11-30 20:51:49 字数 509 浏览 1 评论 0原文

我正在尝试找到一种注册链接点击的方法。在阅读了这个主题并尝试了很多之后,我无法让它发挥作用。我最好的尝试是 <%= link_to person.name, person_url, :method => ,但不起作用。 :count_new %>。 person_url 是我希望点击该链接的人应该访问的 url。 count_new 方法如下所示:

stat = Stat.find_by_country(params[:country])
stat = stat.download+=1
stat.save

params[:country] 位于 url 中。 我知道 update_attributes 效果更好,但我稍后会讲到。

我研究了计算 person_url 页面上的视图,但我真的想注册来自不同链接的点击,而不是注册用户访问的实际页面上的视图。

我在 Rails 3 上。

如有任何帮助,我们将不胜感激。

罗格

I'm trying to get a method in place that registers link clicks. After reading about this subject and trying a lot I don't get it to function. My best try, which does not work, is <%= link_to person.name, person_url, :method => :count_new %>. The person_url is the url I want people who click the link should go to. The count_new method looks like this:

stat = Stat.find_by_country(params[:country])
stat = stat.download+=1
stat.save

The params[:country] is in the url.
I know update_attributes works better but I'll get to that later.

I looked into counting the views on the person_url page but I really want to register clicks from different links in stead of registering views on the actual page user go to.

I'm on rails 3.

Any help is appreciated.

Rutger

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

淡写薰衣草的香 2024-12-07 20:51:49
stat = stat.download+=1
 ^      ^      ^
model   ^      ^ 
      model    ^
           attribute of model

当您应该更新其属性时,您正尝试将整数保存到统计模型中,下载(我假设)。

@stat.update_attribute(download, :download += 1)

编辑

您的 link_to 看起来不太好:

<%= link_to person.name, count_person_path, :remote => true %>

在您的路线中添加此内容以使其正常工作:

map.resources do 
  member do
    get :count
  end
end

还为远程添加rails 3 javascript helpers =>真正的调用:

http://asciicasts.com/episodes/205-unobtrusive-javascript

stat = stat.download+=1
 ^      ^      ^
model   ^      ^ 
      model    ^
           attribute of model

You're trying to save an integer to your stat model when you should be updating its attribute, download (I assume).

@stat.update_attribute(download, :download += 1)

Edit

Your link_to looks off:

<%= link_to person.name, count_person_path, :remote => true %>

have this in your routes to make this work:

map.resources do 
  member do
    get :count
  end
end

also add rails 3 javascript helpers for the remote => true call:

http://asciicasts.com/episodes/205-unobtrusive-javascript

一绘本一梦想 2024-12-07 20:51:49
@stat.increment_counter('download')
@stat.increment_counter('download')
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文