rails form_for在刷新时创建一个新的数据库条目,不提交表单

时间:2010-08-16 20:51:03

标签: ruby-on-rails mongodb form-for

我是rails和mongodb的新手,并且有一个简单的表单尝试创建一个类别树。

每当我刷新页面时,都会在数据库中添加一个新条目。 我没有点击“提交”按钮,只是页面刷新。

表格看起来像这样

<%= form_for Activity.create do |f| -%>
  <%= f.text_field :activity_name % >
<%= f.submt "add action" %<
<% end %>

我的模特是

class Activity
       include MongoMapper::Document

    key    :activity_name, :type => String
    key    :parent,        :type => ObjectId
    key    :acnestors,   Array

    timestamps!
end

我的路线只有一个活动条目

map.activity '/activity/:activity_id', :controller => 'activities', :action => 'show'

虽然我从表单调用create,但我的控制器中的create函数是空的。 表单通过渲染包含在显示页面中,但这无关紧要。

知道为什么页面刷新会充当表单提交吗?

1 个答案:

答案 0 :(得分:0)

您正在表单助手中调用Activity.create。这将在每次加载页面时创建(在Rails意义上,它也会将其保存到数据库中)一个新对象。