展開して以来、この問題が発生しており、理解できません。
私はいくつかの情報を提供し、他に何か必要な場合はお知らせください! ありがとう!
I, [2013-09-08T12:44:31.935143 #19456] INFO -- : Started POST "/sessions" for {IP ADDRESS} at 2013-09-08 12:44:31 -0700
I, [2013-09-08T12:44:31.937969 #19456] INFO -- : Processing by SessionsController#create as HTML
I, [2013-09-08T12:44:31.938102 #19456] INFO -- : Parameters: {"utf8"=>"✓", "authenticity_token"=>"{AUTHENTICITY TOKEN}", "email"=>"mike@test.com", "password"=>"[FILTERED]", "commit"=>"Log In"}
I, [2013-09-08T12:44:31.941064 #19456] INFO -- : Completed 500 Internal Server Error in 3ms
F, [2013-09-08T12:44:31.943631 #19456] FATAL -- :
ActiveRecord::StatementInvalid (Could not find table 'users'):
app/controllers/sessions_controller.rb:6:in `create'
明らかに、「users」テーブルが存在しないことを私に伝えていますが、そのBSは存在するためです。テーブルが見つからないのではないでしょうか?Railsの移行を使用してテーブルを作成したため、これも奇妙だと思います。
参考までに、私の本番用アダプターを次に示します。
production:
adapter: mysql
database: {DATABASENAME}
username: {USERNAME}
password: {PASSWORD}
host: localhost
port: 3306
ここに私のシードファイルがあります:
User.create([{ email: 'mike@test2.com' }, { password_digest: 'password' }])
そして私のユーザーモデル:
class User < ActiveRecord::Base
has_secure_password
validates_uniqueness_of :email
end
そして私のセッションコントローラー(ログインを処理します):
class SessionsController < ApplicationController
def new
end
def create
user = User.find_by_email(params[:email])
if user && user.authenticate(params[:password])
session[:user_id] = user.id
redirect_to root_url, notice: "Logged in!"
else
flash.now.alert = "Email or password is invalid"
render "new"
end
end
def destroy
session[:user_id] = nil
redirect_to root_url, notice: "Logged out!"
end
end
私はデータベースに直接ユーザーを作成したので、問題はユーザーが存在しないことではなく、ログファイルはテーブル「ユーザー」が存在しないと言っていますが、それも間違っています...私は本当に何がわからない続きます...
ああ、ところで、これはすべて開発中に機能します。ログイン、ユーザー作成、すべて。私は開発にsqlite3を使用していて、本番用にmysqlに切り替えましたが、すべてが台無しになりました....
どんな助けでも大歓迎です!