質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

89.55%

Railsチュートリアル第11章 ユーザーの有効化ができない

解決済

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 480

tat_23

score 9

前提・実現したいこと

Railsチュートリアル第11章にてユーザーのアカウントを有効化したいです。

最後の方の「リスト 11.31: アカウントを有効化するeditアクション」で、ここまでやるとRailsサーバーのログに記載されているURL(例ですが下記のようなもの)

https://rails-tutorial-mhartl.c9users.io/account_activations/X=
0r-bEGR7XvzJHHyVHRcug/edit?email=3Dexample%40gmail.com


をブラウザで開くとユーザーが有効化されるはずです。

しかし、そうはならず...

発生している問題・エラーメッセージ

ブラウザでURLにアクセスすると↓このようなページに飛びます。

イメージ![

表示されている内容も読んでみましたが、この点については問題なさそうなのですが。
↓画像中心のメッセージです↓

Cloud9 can't get you to your requested workspace. Here are some suggestions on how to figure out what's going on:

Check that the workspace name (rails-tutorial) and username (mhartl) are typed correctly.
Check that the server is successfully running on Cloud9:
If the server hit an error, the output window will have a message telling you what it is
If you're in the middle of debugging code, your server might be paused right now
The server might be running on a different port; make sure it's on port $PORT with $IP as the IP address

何回やってもこの画面になってしまい、3時間格闘しましたがお手上げです。

同じ問題でハマった方や熟練の方など、どうかお力をお貸しいただけないでしょうか。

以上、よろしくお願い致します。

備考

・ファイルの保存
・ソースコードはチュートリアル通りに書いており問題ないと思われる
・ここまでの rails t でも全てGREENになっている

補足情報(FW/ツールのバージョンなど)

・macOS
・cloud9で開発中

[追記]

development.logを参照してみたら良いとの回答を頂いただきましたので、追記させて頂きます。

Started POST "/login" for 111.239.252.121 at 2019-06-17 21:45:27 +0000
Cannot render console from 111.239.252.121! Allowed networks: 127.0.0.1, ::1, 127.0.0.0/127.255.255.255
Processing by SessionsController#create as HTML
  Parameters: {"utf8"=>"✓", "authenticity_token"=>"YCiyrxxFcIDA8HYn6Ofxuv5Xd0rna2q+ExewUagyXa+JOEfmp7EMDw4GM6o9+9Dut6WdLVBqt1/0IVFgsTfDCw==", "session"=>{"email"=>"example@gmail.com", "password"=>"[FILTERED]", "remember_me"=>"1"}, "commit"=>"Log in"}
  User Load (0.1ms)  SELECT  "users".* FROM "users" WHERE "users"."email" = ? LIMIT ?  [["email", "example@gmail.com"], ["LIMIT", 1]]
Redirected to https://484a4fcb05bd454f9ea79bc02baa843f.vfs.cloud9.ap-southeast-1.amazonaws.com/
Completed 302 Found in 80ms (ActiveRecord: 0.1ms)


Started GET "/" for 111.239.252.121 at 2019-06-17 21:45:28 +0000
Cannot render console from 111.239.252.121! Allowed networks: 127.0.0.1, ::1, 127.0.0.0/127.255.255.255
Processing by StaticPagesController#home as HTML
  Rendering static_pages/home.html.erb within layouts/application
  Rendered static_pages/home.html.erb within layouts/application (1.3ms)
  Rendered layouts/_rails_default.html.erb (22.0ms)
  Rendered layouts/_shim.html.erb (0.2ms)
  Rendered layouts/_header.html.erb (0.6ms)
  Rendered layouts/_footer.html.erb (0.4ms)
Completed 200 OK in 47ms (Views: 46.1ms | ActiveRecord: 0.0ms)

開発環境でログインし、ルートURL(homeページ)にリダイレクトされ、「Account not activated. Check your email for the activation link.」というflashがで表示された後にログを確認すると上記のようになっていました。

[追記その2]

サーバーログに記載されているURLをブラウザで開いた時には、development.log、rails serverのログ共に何も変化はありませんでした。

念の為、新規登録をもう一度してみて、URLにアクセスしましたが変わらぬ状況です。

何かの参考になるかもしれないと思い、新規登録した時のdevelopment.logのコードを記載しておきます。

Started GET "/signup" for 111.239.252.121 at 2019-06-17 23:16:43 +0000
Cannot render console from 111.239.252.121! Allowed networks: 127.0.0.1, ::1, 127.0.0.0/127.255.255.255
Processing by UsersController#new as HTML
  Rendering users/new.html.erb within layouts/application
  Rendered shared/_error_messages.html.erb (0.3ms)
  Rendered users/_form.html.erb (4.0ms)
  Rendered users/new.html.erb within layouts/application (5.1ms)
  Rendered layouts/_rails_default.html.erb (39.3ms)
  Rendered layouts/_shim.html.erb (0.3ms)
  Rendered layouts/_header.html.erb (0.8ms)
  Rendered layouts/_footer.html.erb (0.3ms)
Completed 200 OK in 52ms (Views: 51.1ms | ActiveRecord: 0.0ms)


Started POST "/signup" for 111.239.252.121 at 2019-06-17 23:17:10 +0000
Cannot render console from 111.239.252.121! Allowed networks: 127.0.0.1, ::1, 127.0.0.0/127.255.255.255
Processing by UsersController#create as HTML
  Parameters: {"utf8"=>"✓", "authenticity_token"=>"Ui4NHnclAFbMM9EdiKrrWeZ6Ebn1WEBPEusxWQlGL2yHUi8tk2nkahA7vYbJi0lLZvq0kK/pZYOQPIF+ln67KA==", "user"=>{"name"=>"sample2", "email"=>"example2@gmail.com", "password"=>"[FILTERED]", "password_confirmation"=>"[FILTERED]"}, "commit"=>"Create my account"}
   (0.1ms)  begin transaction
  User Exists (0.5ms)  SELECT  1 AS one FROM "users" WHERE LOWER("users"."email") = LOWER(?) LIMIT ?  [["email", "example2@gmail.com"], ["LIMIT", 1]]
  SQL (0.7ms)  INSERT INTO "users" ("name", "email", "created_at", "updated_at", "password_digest", "activation_digest") VALUES (?, ?, ?, ?, ?, ?)  [["name", "sample2"], ["email", "example2@gmail.com"], ["created_at", "2019-06-17 23:17:10.753884"], ["updated_at", "2019-06-17 23:17:10.753884"], ["password_digest", "$2a$10$.WYZSyY75O2j//ieEZ8CjuwN.v2xKdwQrltHAmxojUdb4iCJD1eUu"], ["activation_digest", "$2a$10$1IXQ/CCixTFZ/QK0OEEmNu1F3JXXfddeiGH4E06/MgukPbmDzA8oe"]]
   (4.9ms)  commit transaction
  Rendering user_mailer/account_activation.html.erb within layouts/mailer
  Rendered user_mailer/account_activation.html.erb within layouts/mailer (1.3ms)
  Rendering user_mailer/account_activation.text.erb within layouts/mailer
  Rendered user_mailer/account_activation.text.erb within layouts/mailer (0.4ms)
UserMailer#account_activation: processed outbound mail in 10.8ms
Sent mail to example2@gmail.com (6.4ms)
Date: Mon, 17 Jun 2019 23:17:10 +0000
From: noreply@example.com
To: example2@gmail.com
Message-ID: <5d081f76bd526_11aa1d7070c759ee@ip-172-31-18-133.mail>
Subject: Account activation
Mime-Version: 1.0
Content-Type: multipart/alternative;
 boundary="--==_mimepart_5d081f76bc424_11aa1d7070c758b";
 charset=UTF-8
Content-Transfer-Encoding: 7bit


----==_mimepart_5d081f76bc424_11aa1d7070c758b
Content-Type: text/plain;
 charset=UTF-8
Content-Transfer-Encoding: 7bit


Hi sample2,

Welcome to the Sample App! Click on the link below to activate your account:

https://rails-tutorial-mhartl.c9users.io/account_activations/mjY7hPlzD0ZcfXduSwULnQ/edit?email=example2%40gmail.com


----==_mimepart_5d081f76bc424_11aa1d7070c758b
Content-Type: text/html;
 charset=UTF-8
Content-Transfer-Encoding: 7bit

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <style>
      /* Email styles need to be inline */
    </style>
  </head>

  <body>
    <h1>Sample App</h1>

<p>Hi sample2,</p>

<p>
Welcome to the Sample App! Click on the link below to activate your account:
</p>

<a href="https://rails-tutorial-mhartl.c9users.io/account_activations/mjY7hPlzD0ZcfXduSwULnQ/edit?email=example2%40gmail.com">Activate</a>
  </body>
</html>

----==_mimepart_5d081f76bc424_11aa1d7070c758b--

Redirected to https://484a4fcb05bd454f9ea79bc02baa843f.vfs.cloud9.ap-southeast-1.amazonaws.com/
Completed 302 Found in 184ms (ActiveRecord: 6.2ms)


Started GET "/" for 111.239.252.121 at 2019-06-17 23:17:11 +0000
Cannot render console from 111.239.252.121! Allowed networks: 127.0.0.1, ::1, 127.0.0.0/127.255.255.255
Processing by StaticPagesController#home as HTML
  Rendering static_pages/home.html.erb within layouts/application
  Rendered static_pages/home.html.erb within layouts/application (1.8ms)
  Rendered layouts/_rails_default.html.erb (43.6ms)
  Rendered layouts/_shim.html.erb (0.3ms)
  Rendered layouts/_header.html.erb (0.7ms)
  Rendered layouts/_footer.html.erb (0.5ms)
Completed 200 OK in 54ms (Views: 52.7ms | ActiveRecord: 0.0ms)


上記の「https://rails-tutorial-mhartl.c9users.io/account_activations/mjY7hPlzD0ZcfXduSwULnQ/edit?email=example2%40gmail.com」の部分にアクセスしたものの、ログには何の変化も無かったということです。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • suama

    2019/06/18 08:35 編集

    rails-tutorial-mhartl.c9users.io の部分はご自身のCloud9のURLに置き換えになるかと思います。
    config/environments/development.rb の host = のところは、ご自身のCloud9のURLになっていますでしょうか?
    例であげてらっしゃるのか、それとも出力されたそのままを貼って下さったのかちょっとわからないのですが、いずれにしてもサンプルのままだとダメなはずですので、ここも念の為確認してみてくださいね。

    https://railstutorial.jp/chapters/account_activation?version=5.1#code-development_email_settings

    キャンセル

  • tat_23

    2019/06/18 09:51

    ご指摘ありがとうございます、まさにそこを修正したら有効化できるようになりました!!

    読んでいましたが、クラウドIDEの人はコレ、という風に読んでいたようで「rails-tutorial-mhartl.c9users.io」をホスト名にしていました。

    お恥ずかしい話ですが、ご指摘が無ければ絶対に気づくことは無かったでしょう。
    この度は本当にありがとうございました、これで前に進めます、引き続き頑張ります!!

    キャンセル

  • suama

    2019/06/18 10:58 編集

    よかったです!回答のまとめもありがとうございます!

    キャンセル

回答 1

check解決した方法

+1

development.rbのhost名の部分を自分の環境に合わせて変更していなかったことが原因で、修正したところ解決致しました。

cloud9なら、「Preview」→「Preview Running Application」で出てくるURLの部分がホスト名で、確認できます。

自己解決という扱いにはなっておりますが、追記依頼の欄で返信を下さったsuamaさんのお陰で間違いに気付けたことを申し添えておきます。

本当にありがとうございました。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 89.55%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる