I think all you need to do is
Link.increment_counter("clicks",@params[:id])
adam
On 3/11/06, Aaron Suggs <aaron@ktheory.com> wrote:>
> Part of my application counts the number of times a link was clicked.
> The Link.click function should increment the @link.clicks attribute.
>
> I assumed
>
> def click
> @link = Link.find(params[:id])
> if @link.increment(''clicks'')
> redirect_to @link.url
> else
> flash[:error] = ''Could not update clicks''
> redirect_to :action => ''list''
> end
> end
>
> would do the trick. But I can''t get @link.increment to work.
Instead
>
> if @link.update_attribute(''clicks'', @link.clicks+1)
>
> does the trick, but it''s a cludge.
>
> I''m just learning Ruby and I''m still wrapping my head
around the proper
> use of attributes. I''m sure I''m making some stupid
mistake with the
> @link.increment line. If someone could point it out, I''d be
grateful.
> :-)
>
> Cheers!
>
> --
> Posted via http://www.ruby-forum.com/.
> _______________________________________________
> Rails mailing list
> Rails@lists.rubyonrails.org
> http://lists.rubyonrails.org/mailman/listinfo/rails
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
http://wrath.rubyonrails.org/pipermail/rails/attachments/20060311/e9778fe6/attachment.html