私は何ヶ月も Rails アプリに取り組んできました。今日、ローカルホストでアプリを実行すると、jquery が各ページで 2 回実行されているようです。
iMac で実行しています。
いくつかの症状は次のとおりです。
- DataTables は、「DataTables を初期化できません」と言っています
- フル カレンダーでは、ページに 1 つではなく 2 つのカレンダーが表示されます
- ブートストラップのドロップダウン メニューが機能しない
それは本当に私を困惑させました!!!
助けてくれてありがとう!
更新1
Rails Virtual Server に Cap Deploy すると、同じアプリが正常に動作します。つまり、私の iMac 環境に関係があるように思えます。
どのコードを表示すればよいかわかりません。jquery/javascript コードは、上記のすべての数字の例で 2 回起動するように見えるためです。
カレンダーのビュー コードは次のとおりです (カレンダーはページに 2 回表示されます)。
<h2><%= current_user.employee.employee_full_name %> - Labor Month</h2>
<%= content_tag "div", id: "calendar", data: {employeeid: current_user.employee.id} do %>
<% end %>
そしてコーヒースクリプト:
$(document).ready ->
$('#calendar').fullCalendar
ignoreTimezone: true,
editable: true,
defaultView: 'month',
height: 500,
slotMinutes: 30,
selectable: true,
selectHelper: true,
select: (start, end, allDay) ->
title = $("#title")
description = $("#description")
hours = $("#hours")
workorder = $("#workorder_id")
actcode = $("#actcode_id")
$("#dialog-form").dialog
autoOpen: true
height: 500
width: 400
modal: true
buttons:
"Create Labor": ->
$.create "/events/",
event:
workorder_id: workorder.val(),
actcode_id: actcode.val(),
title: title.val(),
description: description.val(),
hours: hours.val()
starts_at: "" + start,
ends_at: "" + end,
all_day: allDay,
employee_id: $('#calendar').data('employeeid')
$('#calendar').fullCalendar('refetchEvents')
$(this).dialog "close"
Cancel: ->
$(this).dialog "close"
eventSources: [{
url: '/events',
}],
timeFormat: 'h:mm t{ - h:mm t} ',
dragOpacity: "0.5"
eventDrop: (event, dayDelta, minuteDelta, allDay, revertFunc) ->
updateEvent(event);
eventResize: (event, dayDelta, minuteDelta, revertFunc) ->
updateEvent(event);
updateEvent = (the_event) ->
$.update "/events/" + the_event.id,
event:
title: the_event.title,
starts_at: "" + the_event.start,
ends_at: "" + the_event.end,
description: the_event.description
更新3
Some gems I'm using related to javascript:
gem 'twitter-bootstrap-rails'
gem 'jquery-rails'
gem 'fullcalendar-rails'
gem 'jquery-rest-rails'
gem 'gmaps4rails'
gem 'bootstrap-editable-rails'
gem 'jquery-datatables-rails'
gem 'jqtree-rails'
更新4
Chrome の検査要素を確認する必要があるものはありますか?
更新5
@abhi と Wizard of Ogz は、公開アセットを削除するか、これを development.rb = config.assets.debug = false に入れてみるように言いました。この行を development.rb に追加すると、エラーはなくなりました。
今、私は次に何をすべきかわかりません。アセットをデバッグできるようにしたいと考えています。