Ruby on rails 3 尝试在我的Rails 3应用程序中编写“积分”系统

Ruby on rails 3 尝试在我的Rails 3应用程序中编写“积分”系统,ruby-on-rails-3,default-value,points,Ruby On Rails 3,Default Value,Points,轨道3.2.3 我正在尝试向我的Rails应用程序添加一个points功能。这个想法很简单,如果你点击向上,你的分数会增加1。如果您向下单击,您的积分将减少1。但由于某些原因,积分没有改变,我创建的每个新链接的积分都会增加10 我的迁移文件中的点默认为0,但它们从不显示为零 t.column :points, :integer, :default => 0` 这是我的部分视图代码 <td> <%= link_to "Up",

轨道3.2.3

我正在尝试向我的Rails应用程序添加一个points功能。这个想法很简单,如果你点击向上,你的分数会增加1。如果您向下单击,您的积分将减少1。但由于某些原因,积分没有改变,我创建的每个新链接的积分都会增加10

我的迁移文件中的点默认为0,但它们从不显示为零

t.column :points, :integer, :default => 0`
这是我的部分视图代码

<td>
  <%= link_to "Up",
                    :url => { :action => 'modify_points',
                               :id => link.id,
                               :by => 1 }, 
                               :remote => true,
                    :update => "link" + link.id.to_s %>
</td>
<td>
  <%= link_to "Down",
                    :url => { :action => 'modify_points',
                              :id => link.id,
                              :by => -1 },
                              :remote => true,
                    :update => "link" + link.id.to_s %>

</td>

<td>
  <b> <a href="<%= link.url %>"> <%= link.description %> </a> </b>
  (<%= if link.url =~ /:\/\/([^\/]*)/ then $1 else "wrong URL" end %>) <br/>
  <span id="link"><%= link.id.to_s %><%= link.points %> </span>
  points posted <%= time_ago_in_words link.created_at %> ago
</td>
现在,我的第一个提交的链接有10分,我的第二个链接有20分,我的第三个链接有30分。。。等等而上下链接没有任何作用。为什么我没有看到默认的点值0?modify_points方法中的正则表达式代码是否导致这些错误

**编辑:按下UP链接时,这是我的RAILS服务器日志**


好吧,你的链接不是你想要的-正如你从日志中看到的,这里:

Processing by LinksController#submissions as HTML
Started GET "/?remote=true&update=link4&url%5Baction%5D=modify_points&url%5Bby%5D=1&url%5Bid%5D=4" for 127.0.0.1 at 2012-06-11 10:08:54 -0700
  Processing by LinksController#submissions as HTML
  Parameters: {"remote"=>"true", "update"=>"link4", "url"=>{"action"=>"modify_points", "by"=>"1", "id"=>"4"}}
它将您的:url视为一个普通参数,并将其传递给LinksControllersubmissions。您可能应该使用基于路由的帮助器?类似这样的情况,取决于您的路线:

<%= link_to('UP', link_modify_points_path(link, :by => 1), :remote => true) %>

听起来好像您有多个问题,可能彼此无关——创建链接时未使用默认值,并且修改点无法按预期工作。您可以包含通过单击其中一个链接生成的rails服务器日志的副本吗?是的,在按向上链接时添加了服务器日志
Processing by LinksController#submissions as HTML
Started GET "/?remote=true&update=link4&url%5Baction%5D=modify_points&url%5Bby%5D=1&url%5Bid%5D=4" for 127.0.0.1 at 2012-06-11 10:08:54 -0700
  Processing by LinksController#submissions as HTML
  Parameters: {"remote"=>"true", "update"=>"link4", "url"=>{"action"=>"modify_points", "by"=>"1", "id"=>"4"}}
<%= link_to('UP', link_modify_points_path(link, :by => 1), :remote => true) %>