Datepickerが読み込まれない?? バグ?を見つけたので対処する
よろしくお願いします。
この記事でBootstrap Material DatepickerのCDN版を実装しました。
上手くいっていいたんですが別の作業をしていたときに上手く読み込まれていなかったので対処しました。
内容
ul.nav.nav-pills.nav-justified.mb-3 li.nav-item = active_link_to 'タスク追加', new_task_path,, class: 'nav-link' li.nav-item = active_link_to "TODO(#{@todo_count}件)", todo_tasks_path, class: 'nav-link' li.nav-item = active_link_to "DONE(#{@done_count}件)", done_tasks_path, class: 'nav-link'
'タスク追加', new_task_path
のリンク先が問題のform画面です。
サイト内
nav
のlink_to
から、Datepickerを埋め込んだform画面
へ移動すると、Datepickerが表示されない。ページを再読み込みするとDatepickerが表示される
解決策
ul.nav.nav-pills.nav-justified.mb-3 li.nav-item = active_link_to 'タスク追加', new_task_path, data: { turbolinks: false}, class: 'nav-link' li.nav-item = active_link_to "TODO(#{@todo_count}件)", todo_tasks_path, class: 'nav-link' li.nav-item = active_link_to "DONE(#{@done_count}件)", done_tasks_path, class: 'nav-link'
link_to
にdata: { turbolinks: false}
を付けることで上手く表示されます。
ソース
コチラの記事から対処法を学びました。
Railsでページ読み込みしないとjsが効かないのを解決する方法 - Qiita
turbolinksが悪さしてたみたいです(turbolinksは悪くない)
何者??
turbolinksは、Ajaxを利用してにページ遷移を高速化してくれるライブラリのようです。はい
turbolinksについては
勉強になります。
おまけ
最初に自分で思いついた対処法を紹介(無意味な方法)
ul.nav.nav-pills.nav-justified.mb-3 li.nav-item = active_link_to 'タスク追加', new_task_url, class: 'nav-link' li.nav-item = active_link_to "TODO(#{@todo_count}件)", todo_tasks_path, class: 'nav-link' li.nav-item = active_link_to "DONE(#{@done_count}件)", done_tasks_path, class: 'nav-link'
わかりますか?
new_task_path
を
new_task_url
に変えてみたんですよ。
なんか、名前_path
はrender
的な??
そんで、_url
は``redirect_to```的な????
と思って
Railsチュートリアルの演習でなんかやった気がするううって思って
これで、ちゃんとHTTPリクエストが実行されるぞおおって思ったんすよ
違いました!!!!!