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

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

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

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

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

Ruby on Rails

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

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

1回答

648閲覧

(Rails5 heroku) jqueryの読み込みが出来ていない

kenta001

総合スコア16

Ruby on Rails 5

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

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

Ruby on Rails

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

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

1クリップ

投稿2019/01/10 09:51

編集2019/01/13 04:10

Ruby on Railsのwebアプリをherokuにデプロイしたのですが、Jqueryが動いていません。
恐らく、Jqueryのファイルが読み込めてなさそうです。

同じような症状で困っている方の記事はいくつか見つけたのですが、同じ対策を行っても解決しませんでした。

下記の対策以外に可能性はありますでしょうか??

■■エラーメッセージ■■
is not defined

--■該当コード
$(document).on('turbolinks:load', function() {
$("p.warning").css( "color", "red" );
});

■■前提■■
・開発環境では動作確認済
・Railsバージョン
5.2.2
・プリコンパイル済
rake assets:precompile
$ bin/rake assets:precompile RAILS_ENV=production (こっちもOKそう)
・どの作業後も念のため、heroku restartを実行

■■対策■■
①下記のサイトを参考に$(document).on('turbolinks:load', function() { });
や、色々、発火させる方法を変えてみましたが、同じ結果でした。
そもそもJqueryのファイルが読み込めてなさそう。
https://qiita.com/hiroyayamamo/items/b258acbaa089d9482c8a

②//= require turbolinksを削除してみる

③//= require jqueryを //= require rails-ujs の上に追加
中身↓
//= require jquery
//= require rails-ujs
//= require activestorage
//= require turbolinks
//= require_tree .
参考RUL
https://qiita.com/Statham/items/372234e23749ff1f6bf8

④Gemfileを追加
gem 'jquery-ui-rails'

bundle install
参考URL
https://qiita.com/Statham/items/372234e23749ff1f6bf8

★★★
一旦Jquery.jsをassetsフォルダに置いて、それを参照する形にしてみましたが、それでも下記のように
上手く読み込めていません。
開発環境では動いています。
イメージ説明

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

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

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

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

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

guest

回答1

0

app/views/layouts/application.html.erbの一番後ろ(</body>の手前)に、以下のコードを埋め込むといかがでしょうか(前提としてはapp/assets/javascriptディレクトリにjquery.jsファイルが存在している)。

<%= javascript_include_tag 'jquery' %>

投稿2019/01/13 01:10

psuke

総合スコア202

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

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

kenta001

2019/01/13 02:29

ご回答ありがとうございます。 上記を試してみましたが、解決することができませんでした。 開発環境では、assetsフォルダに追加して、コンパイルもでき、動作をしておりました。 Heroku上にアップすると、やはり動きませんでした。 ブラウザのデバックモードで確認したときに、assetsフォルダにファイルがないのが原因かもしれないのですが、これはPUSH時に作成されていないということになりますでしょうか? config/enviroments/production.rbの設定を config.assets.compile = trueに変更しているので、PUSHのみで良いと思っているのですが。。。 ちなみにherokuの設定関係は下記のサイトを参考にしております。 https://qiita.com/kazukimatsumoto/items/a0daa7281a3948701c39
psuke

2019/01/13 02:39

> assetsフォルダにファイルがないのが原因かもしれないのですが、これはPUSH時に作成されていないということになりますでしょうか? 確かにそうかもしれません。以下のような情報もありますので、手動でのprecompileを試してみてはいかがでしょうか。 https://stackoverflow.com/questions/45699456/js-jquery-not-working-with-heroku
kenta001

2019/01/13 04:04

下記の作業でassetsフォルダ内に Jquery.jsファイルが存在するようになりました。 https://qiita.com/shockdayukio/items/d535630c91c1817355f3 ですが、いまだに、動かないようです。 ブラウザデバックの内容を添付します。 とりあえず、jquery.jpは参照できてそうに見えるのですが。。。 すいません、なにか単純なミスがあれば申し訳ないですが、原因が全く分からない状態です。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問