"새"보기에서 데이터베이스에 새 사용자를 만들고 저장하려는 경우 새 레코드를 데이터베이스에 저장하지 마십시오.하지만 콘솔에서이 레코드를 만들어보십시오. 어떻게 작동합니까?새 레코드가 데이터베이스에 저장되지 않음
당신이 트랜잭션이
2.1.2 :001 > user = User.new(name:"mike", email:"[email protected]", password:"123456", password_confirmation:"123456")
=> #<User id: nil, name: "mike", email: "[email protected]", created_at: nil, updated_at: nil, password_digest: "$2a$10$uxFvZ4/T3rb2rQlEBAKkWuo13CUZsaBNG.DD5DPpHlI...">
2.1.2 :002 > user.save
(0.2ms) begin transaction
User Exists (0.4ms) SELECT 1 AS one FROM "users" WHERE "users"."name" = 'mike' LIMIT 1
User Exists (0.3ms) SELECT 1 AS one FROM "users" WHERE LOWER("users"."email") = LOWER('[email protected]') LIMIT 1
Binary data inserted for `string` type on column `password_digest`
SQL (1.8ms) INSERT INTO "users" ("created_at", "email", "name", "password_digest", "updated_at") VALUES (?, ?, ?, ?, ?) [["created_at", "2014-11-13 10:08:01.402404"], ["email", "[email protected]"], ["name", "mike"], ["password_digest", "$2a$10$uxFvZ4/T3rb2rQlEBAKkWuo13CUZsaBNG.DD5DPpHlI3WjzUhl3.u"], ["updated_at", "2014-11-13 10:08:01.402404"]]
(204.8ms) commit transaction
=> true
작동하지 않습니다
를 실행 볼 수 있듯이이, 내 사용자 컨트롤러class UsersController < ApplicationController
def index
@users = User.all
end
def new
@user = User.new
end
def create
@user = User.new(user_params)
@user.save
redirect_to @user
end
def show
@user = User.find(params[:id])
end
private
def user_params
params.require(:user).permit(:email, :name)
end
end
이 콘솔에서 로그입니다? 나쁜 영어로 죄송합니다.
예는, 당신을 works.thank, 그것은 http://pastebin.com/01DWVDRn – vveare138
@ 큰 vveare138 웹 서버 로그입니다! 대답을 수락하는 것을 고려해주십시오. – gmile
5 분 기다려주세요 :) 작은 카마를 가지고 있습니다. – vveare138