model-view-controller - 在 Rails 3 中添加按钮点击计数器

标签 model-view-controller ruby-on-rails-3.1 mongoid

我想在我的文章上添加按钮,以便我可以知道其点击次数并更新数据库上的计数器,我使用的是 mongoid ,我的模型是:

class Article
  include Mongoid::Document
  include Mongoid::Timestamps
  field :title, :type => String
  field :content, :type => String
  field :likes, :type => Integer ,:default => 0
  field :dislikes, :type =>Integer, :default => 0
  field :spam, :type => Integer, :default => 0
end

我的文章显示 Controller 是:

  def show
    @article = Article.find(params[:id])

    respond_to do |format|
      format.html # show.html.erb
      format.json { render :json => @article }
    end
  end

我对演出的看法是:

<p id="notice"><%= notice %></p>

<p>
  <b>Title:</b>
  <%= @article.title %>
</p>

<p>
  <b>Content:</b>
  <%= raw @article.content %>
</p>

Likes : <%= @article.likes %>  <br/>
Dislikes : <%= @article.dislikes %><br/>
Spams : <%= @article.spam %><br/>


<%= link_to 'Edit', edit_article_path(@article) %> |
<%= link_to 'Back', articles_path %>

我在互联网上找到了有关它的任何信息。

我怎样才能实现它?

最佳答案

最简单的方法是将 click_count 整数属性添加到您的 Article 模型中,然后在 Controller 代码中增加该属性:

def show
  @article = Article.find(params[:id])
  @article.increment! :click_count

  respond_to do |format|
    format.html # show.html.erb
    format.json { render :json => @article }
  end
end

关于model-view-controller - 在 Rails 3 中添加按钮点击计数器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8681355/

相关文章:

java - Liferay 6.0 基于groupid动态使用Datasource

ruby-on-rails - Rails - 将字段添加到模型后的奇怪行为

ruby-on-rails - Nested Set Gem 是如何工作的,以及如何将其合并到我的项目中?

ruby-on-rails - rails mongoid 清晰的标准

c# - MVC EnumMember 自定义字符串

model-view-controller - 如何将 Pdfsharp pdfDocument 保存到文件路径

c++ - 如何避免 QlistView 中的数据在双击时被清空?

ruby-on-rails - 将 i18n gem 与部分模板文件一起使用时出现问题

ruby-on-rails - Time gt 查询不适用于 mongoid 和 ruby​​ on rails

ruby-on-rails - Tire Elastic中的自定义分析器无法与Mongoid一起使用