0

我正在做一个 ruby​​ on rails 教程,突然转到注册页面会返回以下内容:

在此处输入图像描述

有人知道修复吗?或者就此而言出了什么问题?这似乎很突然,我认为我没有更改任何会影响注册页面的内容...

class UsersController < ApplicationController

  def show
    @user = User.find(params[:id])
  end

  def create
    @user = User.new(user_params)
    if @user.save
      redirect_to @user
    else
      render 'new'
    end
  end

  private

  def user_params
    params.require(:user).permit(:name, :email, :password,
                                 :password_confirmation)
  end
end
4

1 回答 1

1

这意味着您的@user对象未初始化..

您需要初始化@user变量。这里有几个选项。

确保你的方法在你的类new中初始化它:UsersController

def new
  @user = User.new
end

另一种选择是在表单中直接使用一个新对象:

<%= form_for(User.new) do |f| %>

还有另一种选择,在您看来,在呼应 之前form_for,请输入:

<% @user = User.new %>

我最好的建议是像在第一个示例中那样将变量放入控制器中。

于 2013-09-10T23:54:20.430 回答