2011-12-05 10 views
0

フォームからモデルにいくつかのパラメータ(カウント)を渡そうとしています。フォームパラメータをRails3のモデルに渡す

モデルは、基本的にX回ユーザーを作成します。

= f.text_field :count 

そして私はこれがDEVに適切に提出されて見ることができます。私たちの形で

は、我々はこれ持っています。ログ:私は基本的に'10が必要

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

:その後、私のユーザーモデルでこれを呼び出すことになっている生成

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

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

が、私は私のコントローラでこれを試してみました'フォームからのカウントに置き換えられました。

どうすればこの問題を解決できますか?

- UPDATE 1 -

私は以下のように編集したが、私はそれがレールに予約だと思うのでUSERCOUNTするカウントから変更しなければならなかった取得

..私は私のコントローラでこれを持って

@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' 

本当にイライラ...

答えて

3
class User 
    attr_accessor :count 
end 

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

は正常に動作する必要があります。

+0

クールですが、どうすれば使用できますか?user.rbでカウントしますか? –

+0

私の返事を更新しました – lucapette

+0

私はブロンドです!それは私がこれを行うことができることを意味しますか::count.times do ??! –

関連する問題