0

アカウント マネージャーに属するアカウント モデルがあります。

class Account < ActiveRecord::Base  
  belongs_to :account_manager, :class_name => 'User'
  validates_presence_of :account_manager
end

私のコントローラーは次のようになります。

def create
    @account = Account.new(params[:account])
...

リクエストは次のようになります。

Started POST "/accounts" for 74.61.248.151 at Sun Sep 26 16:12:26 +0000 2010
  Processing by AccountsController#create as HTML
  Parameters: {"commit"=>"Create Account", "account"=>{"name"=>"", "account_manager_id"=>["171"]}, "authenticity_token"=>"T4ERO0iMtseI952LP/9gf5EcYrRCE/3pQFdSgqi3hNg=", "utf8"=>"\342\234\223"}

何らかの理由で、このリクエストを送信した後、アカウント マネージャーが空白であるとフォームに表示されます。ただし、これは本番環境でのみ発生し、ローカル開発環境では発生しません。これを前に見た人はいますか?唯一の違いは、本番環境で REE を使用していることですが、これは Rails の機能であるため、問題になるとは思いません。Rails のバージョンはローカルと本番で同じ - 3.0.0

4

1 に答える 1

0

私はこの醜いハックをしなければなりませんでした:

@account.account_manager_id = params[:account][:account_manager_id].first.to_i unless params[:account][:account_manager_id].blank?

多分これはレールのバグです。他の人がこの問題を経験しているかどうかを知りたい.

于 2010-09-26T17:33:09.190 に答える