開発環境では動きますが、本番環境でエラーを起こしてしまいます。
初めて質問するので、勝手が分からず、何か抜けている情報があれば仰って下さい。
URL
https://alphablog7777777711111.herokuapp.com
heroku
https://dashboard.heroku.com/apps/alphablog7777777711111
発生している問題・エラーメッセージ
上記のように表示されます。
追記します。(最新)
PG::UndefinedColumn: ERROR: column articles.user_id does not exist LINE 1: SELECT COUNT(*) FROM "articles" WHERE "articles"."user_id" =...
hoshi-takanori 18時間前
heroku アプリ管理画面の url はプロジェクトオーナーとしてログインしないと見れないので意味ないです。 それより、エラーのありそうなソースコード(部分または全部)を貼っていただけると回答がつきやすいと思います。
ご指導ありがとうございます!ファイルを追記します!当アプリでDBを用いるアクション(ユーザーリスト・記事リストへのアクセス)をするとエラーを起こします。
ruby on rails
コード
class UsersController < ApplicationController
before_action :set_user, only: [:edit, :update, :show]
before_action :require_same_user, only: [:edit, :update, :destroy]
before_action :require_admin, only: [:destroy]
def index
@users = User.paginate(page: params[:page], per_page: 5)
end
・・・
def user_params
params.require(:user).permit(:username, :email,:password)
end
コード
Rails.application.routes.draw do
root 'pages#home'
get 'about', to: "pages#about"
resources :articles
get 'signup', to: "users#new"
resources :users, except: [:new]
get 'login', to: 'sessions#new'
post 'login', to: 'sessions#create'
delete 'logout', to: 'sessions#destroy'
resources :categories, except: [:destroy]
end
DB
1コード 2ActiveRecord::Schema.define(version: 2020_02_24_090213) do 3 4 create_table "articles", force: :cascade do |t| 5 t.string "title" 6 t.text "description" 7 t.datetime "created_at" 8 t.datetime "updated_at" 9 t.integer "user_id" 10 end 11 12 create_table "categories", force: :cascade do |t| 13 t.string "name" 14 t.datetime "created_at", precision: 6, null: false 15 t.datetime "updated_at", precision: 6, null: false 16 end 17 18 create_table "users", force: :cascade do |t| 19 t.string "username" 20 t.string "email" 21 t.datetime "created_at", precision: 6, null: false 22 t.datetime "updated_at", precision: 6, null: false 23 t.string "password_digest" 24 t.boolean "admin", default: false 25 end 26 27end 28 29 30database.yml 31 32production: 33 <<: *default 34 adapter: postgresql 35 encoding: unicode 36 pool: 5 37 38 39 40 41 42 43問題部のログ↓ 44```log 452020-02-29T03:58:49.864374+00:00 app[web.1]: [be594ea3-b9f8-4402-8fb1-750c855be92d] Parameters: {"authenticity_token"=>"bwMnkewc+r1okRatJJkAE3TWQkYGcN+x/vy0M6PHo+bFxMCsfxea1MIpiFMH2ghaKWCSA/JsvhtiemtDIpJ/VA==", "article"=>{"title"=>"aaaaaaaaaaaaaa", "description"=>"aaaaaaaaaaaaaaaaa"}, "commit"=>"Create Article"} 462020-02-29T03:58:49.867819+00:00 app[web.1]: [be594ea3-b9f8-4402-8fb1-750c855be92d] User Load (1.3ms) SELECT "users".* FROM "users" WHERE "users"."id" = $1 LIMIT $2 [["id", 1], ["LIMIT", 1]] 472020-02-29T03:58:49.868481+00:00 app[web.1]: [be594ea3-b9f8-4402-8fb1-750c855be92d] Completed 500 Internal Server Error in 4ms (ActiveRecord: 1.3ms | Allocations: 577) 482020-02-29T03:58:49.868963+00:00 app[web.1]: [be594ea3-b9f8-4402-8fb1-750c855be92d] 492020-02-29T03:58:49.868964+00:00 app[web.1]: [be594ea3-b9f8-4402-8fb1-750c855be92d] ActiveModel::MissingAttributeError (can't write unknown attribute `user_id`): 50
ちなみにローカルにて正常に作動した場合、ログは以下になります。
Processing by ArticlesController#create as HTML
Parameters: {"authenticity_token"=>"UVbtg4lkZecIuA0te4HggAcwUjzMHK56bWslH5g2S8Qb+9E1r5XlBur5Lfi2OBrQjN6zjoIQGedc8D08yv9i+w==", "article"=>{"title"=>"aaaaaaaaaaaaaa", "description"=>"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"}, "commit"=>"Create Article"}
User Load (0.3ms) SELECT "users".* FROM "users" WHERE "users"."id" = ? LIMIT ? [["id", 1], ["LIMIT", 1]]
↳ app/controllers/application_controller.rb:7:in current_user' (0.1ms) begin transaction ↳ app/controllers/articles_controller.rb:35:in
create'
Article Create (1.6ms) INSERT INTO "articles" ("title", "description", "created_at", "updated_at", "user_id") VALUES (?, ?, ?, ?, ?) [["title", "aaaaaaaaaaaaaa"], ["description", "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"], ["created_at", "2020-02-29 04:22:38.795512"], ["updated_at", "2020-02-29 04:22:38.795512"], ["user_id", 1]]
↳ app/controllers/articles_controller.rb:35:in create' (3.3ms) commit transaction ↳ app/controllers/articles_controller.rb:35:in
create'
Redirected to http://localhost:3000/articles/5
Completed 302 Found in 18ms (ActiveRecord: 5.3ms | Allocations: 2981)
お手数をおかけしますが、どうぞ宜しくお願い致します。
回答2件
あなたの回答
tips
プレビュー