将表格参数传递给Rails中的模型3

时间:2011-12-05 17:41:22

标签: ruby ruby-on-rails-3

我正在尝试将一些参数(计数)从表单传递给模型。

该模型基本上创建了一个用户X次。

在我们的表格中,我们有:

= f.text_field :count

我可以看到这是在开发中正确提交的。日志:

user"=>{"count"=>"2"}

我在我的控制器中试过这个:

@user = User.generate(params[:count])
然后

Generate应该在我的用户模型中调用它:

def self.generate(count=10)
  count.times do
  .....
end

我基本上需要将'10'替换为来自表单的计数。

我该如何解决这个问题?

- 更新1 -

我编辑如下,但不得不从count更改为usercount因为我认为这是在rails中保留的..

我在控制器中有这个:

@user = User.generate(params[:user][:usercount])

这在我的user.rb中:

attr_accessor :usercount   

def self.generate
  usercount.times do
  ...
end

当我提交时,我明白了:

ArgumentError (wrong number of arguments (1 for 0)):
  app/models/user.rb:22:in `generate'
  app/controllers/users_controller.rb:38:in `new_users_create'

非常令人沮丧......

1 个答案:

答案 0 :(得分:3)

class User
  attr_accessor :count
end

@user = User.generate(params[:user][:count])

应该可以正常工作。