ブログの会員登録を機能を作成中に起こったエラー、
submitボタンを押すと、下記が表示される。
参考スペック
cloud 9
Rails 5.1.4
ruby 2.4.0p0
psql (PostgreSQL) 9.3.18
Ubuntsu 14.04.5
Railsのエラー表記ではないので、DBかhtmlの問題か。
疑い① DB系の原因
いろいろ調べてみると、どうやらpostgreの認証、もしくはデプロイの過程で弾かれている例が多いみたい。
peer認証の関係でpsqlログインできない時の対処法/qiita
PostgreSQLでパスワード認証を行う方法/qiita
こちらを参考にさせて頂き、レッツトライ。
どうやらpg_hba.confの中で、認証方法を変える必要があるらしい。。
ログインは出来たのに別の認証が必要なの?
奥が深い。
pg_hba.confを探す
$ sudo find / -name pg_hba.conf
pg_hba.confを開く
$ sudo vi /etc/postgresql/9.3/main/pg_hba.conf
# Database administrative login by Unix domain socket
local all postgres peer
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all peer
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
#local replication postgres peer
ここのpeerの部分を「trust」もしくはコメントアウトすると良いらしい。
変更する、、が、上書き出来ない?
そもそも、sudoの終了の仕方も理解してないし、DBは別で勉強の時間が必要だなこりゃ><
とりあえず保留。
疑い② viewの原因
submit後は、user詳細画面に飛ぶ設計にしてあるので、users配下のビューファイルをチェック。
user.html.erb
<h1><%= @user.company, @user.name %>さん、ようこそ。</h1>
ずっと分からなかったのですが、指摘してもらいようやく分かりました。
user.html.erb
<h1><%= @user.company %>,<%= @user.name %>さん、ようこそ。</h1>
切り分けなきゃなんですね。
新たな課題にも気づけたし、日々精進。