Ruby on rails RubyonRails注册后自动登录导致用户屏幕空白

Ruby on rails RubyonRails注册后自动登录导致用户屏幕空白,ruby-on-rails,Ruby On Rails,我目前正在做MichaelHartl的RubyonRails教程 目前,我在PDF的这一部分 我的问题是 注册新用户时,该代码通过创建新用户并自动登录该用户来正确运行。但是在那之后我遇到了麻烦 我无法将_重定向到任何页面,而是停留在一个空白的localhost:3000/users屏幕上,而不是显示用户页面或重定向某个位置 这似乎是问题所在,但可能不是 def create @user = User.new(params[:user]) respond_to do |for

我目前正在做MichaelHartl的RubyonRails教程

目前,我在PDF的这一部分

我的问题是

注册新用户时,该代码通过创建新用户并自动登录该用户来正确运行。但是在那之后我遇到了麻烦

我无法将_重定向到任何页面,而是停留在一个空白的localhost:3000/users屏幕上,而不是显示用户页面或重定向某个位置

这似乎是问题所在,但可能不是

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

    respond_to do |format|
      if @user.save
        sign_in @user
        flash[:success] = "Welcome to the Sample App!"
        redirect_to users_path
      else
        render 'new'
      end
    end
  end
请让我知道是否有更多的信息可以帮助


非常感谢。

您使用了一个respond to:format块,然后不提供任何格式。如果您希望您的操作在不同的请求格式下表现出不同的行为,那么您只需要一个格式块:例如对于常规html和javascript/ajax。因此,要么像这样丢弃格式块

  def create
    @user = User.new(params[:user])
    if @user.save
      sign_in @user
      flash[:success] = "Welcome to the Sample App!"
      redirect_to users_path
    else
      render 'new'
    end
  end
或者将代码放入html块中:

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

    respond_to do |format|
      format.html {
        if @user.save
          sign_in @user
          flash[:success] = "Welcome to the Sample App!"
          redirect_to users_path
        else
          render 'new'
        end
      }
    end
  end

第一种可能适合您。

您使用respond\u to:format块,然后不提供任何格式。如果您希望您的操作在不同的请求格式下表现出不同的行为,那么您只需要一个格式块:例如对于常规html和javascript/ajax。因此,要么像这样丢弃格式块

  def create
    @user = User.new(params[:user])
    if @user.save
      sign_in @user
      flash[:success] = "Welcome to the Sample App!"
      redirect_to users_path
    else
      render 'new'
    end
  end
或者将代码放入html块中:

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

    respond_to do |format|
      format.html {
        if @user.save
          sign_in @user
          flash[:success] = "Welcome to the Sample App!"
          redirect_to users_path
        else
          render 'new'
        end
      }
    end
  end

第一个可能适合您。

日志文件中写入了什么?(log/development.log)您是否使用UserController的视图定义了索引操作?写入日志文件的内容是什么?(log/development.log)您是否使用UserController的视图定义了索引操作?请给我投票,然后打勾:)请给我投票,然后打勾:)