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

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

新規登録して質問してみよう
ただいま回答率
85.44%
Ruby on Rails 6

Ruby on Rails 6は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Q&A

解決済

2回答

457閲覧

ec2デプロイ済みのアプリケーションコードを更新してもviewに反映されない

tarotarotarotar

総合スコア41

Ruby on Rails 6

Ruby on Rails 6は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

0グッド

0クリップ

投稿2023/03/11 13:41

編集2023/03/11 13:41

実現したいこと

  • ec2のrails のアプリケーションコードをpullしたらビューに反映したい

前提

react on railsでアプリケーションの開発を行っております。
昨日ec2にデプロイをしました。

トップページの内容を更新したのでローカルからgithubにpushし、その後ec2からpullしました。

しかし、コードは正常に更新できているのですが、ビューは古いコードを参照しており、画面が変わりませんでした。

なにか根本的なものの理解が足りていない気もしています。

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

エラーは発生しておりません。

該当のソースコード

javascript

1/* global document */ 2 3// Entry point for the build script in your package.json 4import '@hotwired/turbo-rails'; 5import './controllers'; 6 7import React, { StrictMode } from 'react'; 8import { createRoot } from 'react-dom/client'; 9import { BrowserRouter } from 'react-router-dom'; 10import App from './components/App'; 11 12const container = document.getElementById('root'); 13const root = createRoot(container); 14 15document.addEventListener('DOMContentLoaded', () => { 16 root.render( 17 <StrictMode> 18 <BrowserRouter> 19 <App /> // ← ここで読み込むコンポーネントを変更したが反映されない 20 </BrowserRouter> 21 </StrictMode> 22 ); 23}); 24

試したこと

ブラウザのキャッシュの削除、インスタンスの再起動を行いましたが、ビューは古いままでした。

ec2上でコードの更新が行われているか確認しましたが、コードは更新されておりました。

おわかりの方何卒よろしくおねがいいたします。

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

ruby 3.1.0p0
rails, 7.0.2, 7.0.2.3
'puma', '~> 5.0'
gem 'sqlite3', ' 1.4'
nginx version: nginx/1.22.1

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

EC2のRailsアプリケーションで、コードを更新したにもかかわらずビューが更新されない問題が発生しているようですね。

まずは、ビューが更新されているかどうかを確認するために、以下の手順を試してみてください。

EC2インスタンスにSSHで接続する。
アプリケーションのルートディレクトリに移動する。
git pullコマンドを実行し、最新のコードを取得する。
ビューのキャッシュを削除するために、以下のコマンドを実行する。

python

1RAILS_ENV=production bundle exec rails assets:clean assets:precompile

これらの手順を行うことで、最新のコードが反映されたビューが表示されるようになるはずです。

もし、ビューが更新されていることが確認できた場合は、ブラウザのキャッシュが原因で古いビューが表示されている可能性があります。その場合は、ブラウザのキャッシュをクリアしてからページを再読み込みしてみてください。

投稿2023/03/11 17:11

TateWagon

総合スコア25

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tarotarotarotar

2023/03/13 00:26

ありがとうございます! 更新することができたようです。 感謝です。
guest

0

rails の再起動が必要ですが、やりました?

投稿2023/03/11 14:49

winterboum

総合スコア23461

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tarotarotarotar

2023/03/11 16:04 編集

ありがとうございます。 インスタンスの再起動したのでrailsも再起動されたと思っておりました。 railsの再起動の方法を調べて以下の記事を見ています https://qiita.com/SS_ONEPACK/items/030a719abd3b57d46738 しかしながら RAILS_SERVE_STATIC_FILES=1 unicorn_rails -c config/unicorn.rb -E production -D を実行しようとすると -bash: unicorn_rails: コマンドが見つかりません と出てきます。調べても対処方法がわかっておりません... 無知で申し訳ございません。
tarotarotarotar

2023/03/11 16:35 編集

以下手順で再起動を行いました vim pids/server.pid にてプロセス番号を確認、kill -9 コマンドでキル rails server -d で再起動 しかしながらコードは反映されておりませんでした。 ブラウザのキャッシュの削除のみならず、tmp/cache フォルダー内のすべてのファイルを削除してキャッシュも削除しましたがダメでした。。。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.44%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問