2015-09-13 183 views
-4

无论我在那里写什么,我总会得到这些错误,我已经读了两遍,我不明白我做错了什么。第7章错误,Ruby on Rails教程

这是我在GitHub

代码下面是错误的screenshot

user_controller.rb

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

    def new 
    @user = User.new 
    end 

    def create 
    @user = User.new(params[user_params]) 
    if @user.save 
     redirect_to user_url(@user) 
     #Handle a successfull save 
    else 
     render 'new' 
    end 
    end 

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

型号

class User < ActiveRecord::Base 
    before_save { self.email = email.downcase } 
    validates :name, presence: true, length: { maximum: 50 } 
    VALID_EMAIL_REGEX = /\A[\w+\-.][email protected][a-z\d\-.]+\.[a-z]+\z/i 
    validates :email, presence: true, length: { maximum: 255 }, 
        format: { with: VALID_EMAIL_REGEX }, 
        uniqueness: { case_sensitive: false } 
    has_secure_password 
    validates :password, presence: true, length: { minimum: 6 } 
end 

形式

<% provide(:title, 'Sign up') %> 
<h1>Sign up</h1> 

<div class="row"> 
    <div class="col-md-6 col-md-offset-3"> 
    <%= form_for(@user) do |f| %>a 
     <%= render '/shared/error_messages' %> 

     <%= f.label :name %> 
     <%= f.text_field :name, class: 'form-control' %> 

     <%= f.label :email %> 
     <%= f.email_field :email, class: 'form-control' %> 

     <%= f.label :password %> 
     <%= f.password_field :password, class: 'form-control' %> 

     <%= f.label :password_confirmation, "Confirmation" %> 
     <%= f.password_field :password_confirmation, class: 'form-control' %> 

     <%= f.submit "Create my account", class: "btn btn-primary" %> 
    <% end %> 
    </div> 
</div> 

回答

0

行更改

@user = User.new(params[user_params]) 

@user = User.new(user_params) 

in UsersController

一切看起来不错。

+0

我一直在试图修复它2天,你已经修复了一切!非常感谢。书籍由于某种原因没有解释。 – r0uder

相关问题