Ruby on rails Can';t使用mongrel_rails start获取值params[:user]第一个请求?

Ruby on rails Can';t使用mongrel_rails start获取值params[:user]第一个请求?,ruby-on-rails,mongrel,Ruby On Rails,Mongrel,当我使用mongrel_rails start启动我的mongrel服务器时,在我的控制器的create操作中,我从params[:user]获得nil。之后第二次和第三次都可以。此外,如果我使用script/server启动我的Mongrel,它根本没有任何问题。在脚本/服务器和mongrel_rails start之间启动mongrel server是不同的?你曾经面对过这个问题吗 这里是我在控制器中的代码: def create @user = User.new(params[:use

当我使用mongrel_rails start启动我的mongrel服务器时,在我的控制器的create操作中,我从params[:user]获得nil。之后第二次和第三次都可以。此外,如果我使用script/server启动我的Mongrel,它根本没有任何问题。在脚本/服务器和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格式进行测试和发布。

首先要检查的是控制器中的新操作。 第二个是包含您的表单的erb文件。我感觉文本字段标记不正确

我建议通过以下方式检查
params
对象:

logger.debug params.inspect # Will show up log/development.log
puts params.inspect # Will show up in server console

您想粘贴代码以便用户查看吗?但我不使用HTML表单发布数据,我使用Poster,一个firefox插件来测试RESTful Web服务,并将数据直接放在消息体中。Oops。。因此,您不需要查看html表单,但仍然需要检查
params
对象