0

mongrel_rails start を使用して mongrel サーバーを起動すると、最初のリクエストのコントローラーの create アクションで params[:user] から nil を取得します。その後、2回目、3回目はOKです。さらに、スクリプト/サーバーを使用して Mongrel を起動しても、まったく問題はありません。script/server と mongrel_rails start の間に mongrel server を起動することで違うのですか? この問題に直面したことがありますか?

ここにコントローラーの私のコード:

def create
  @user = User.new(params[:user])

  respond_to do |format|
    if @user.save
      flash[:notice] = 'User was successfully created.'
      format.html { redirect_to(@user) }
      format.xml  { render :xml => @user, :status => :created, :location => @user }
    else
      format.html { render :action => "new" }
      format.xml  { render :xml => @user.errors, :status => :unprocessable_entity }
    end
  end
end

また、Poster アドオンを使用してテストし、xml 形式で投稿します。

4

1 に答える 1

0

最初に確認したいのは、コントローラーの新しいアクションです。2 番目は、フォームを含む erb ファイルです。テキスト フィールドのタグが適切ではない気がします。

params次の方法でオブジェクトを検査することをお勧めします。

logger.debug params.inspect # Will show up log/development.log
puts params.inspect # Will show up in server console
于 2009-07-21T08:27:19.257 に答える