nil:NilClass haml的未定义方法'model_name'

问题描述 投票:0回答:1

我相信现在已经尝试找到错误了几天,但我无法弄清楚。我总是收到错误“ nil:NilClass的未定义方法'model_name'”。下面是我正在使用的代码。

视图:

= simple_form_for @new_user do |f|
    = f.input :first_name
    = f.input :last_name
    = f.input :email, required: false
    = f.input :phone_number
    = f.button :submit

控制器:

def create
        if params[:user].present?
            @new_user = User.new(user_params)
            if @new_user.first_name.nil?
                @new_user.first_name = ""
            end
            if @new_user.last_name.nil?
                @new_user.last_name = ""
            end
            if @new_user.email.nil?
                @new_user.email = ""
            end
            if @new_user.save
                redirect_to 'index'
            else
                reder 'create'
            end
        end
    end

    private
    def user_params
        params.require(:user).permit(:first_name, :last_name, :email, :phone_number)
    end

路线:

  resources :user

  root 'users#welcome'

  get '/create' => 'users#create'
  get '/welcome' => 'users#welcome'
  get '/index' => 'users#index'

SQL表:

    CREATE TABLE IF NOT EXISTS users
    (
        id serial not null
                constraint users_pkey
                primary key,

        created_at      TIMESTAMP WITHOUT TIME ZONE NOT NULL,
        updated_at      TIMESTAMP WITHOUT TIME ZONE NOT NULL,
        deleted_at      TIMESTAMP WITHOUT TIME ZONE,
        email           VARCHAR NOT NULL,
        first_name      VARCHAR NOT NULL,
        last_name       VARCHAR NOT NULL,
        phone_number    VARCHAR
    );

我不熟悉Rails,所以如果有人能发现错误,我将不胜感激。


ruby-on-rails haml
1个回答
0
投票

您的控制器中有一个错字“重发器”。您可以共享提交表单时得到的确切错误消息或错误跟踪吗?此外,提交表格后,您是否可以验证是否在数据库中创建了记录?

© www.soinside.com 2019 - 2024. All rights reserved.