Using RoR 4.1.4
I am trying to use the leaflet-rails gem. I followed the steps outlined in the github page, but when I try to load the map, I see
Re
Turns out this is maybe some RoR specific issue.
Many sites recommend to put the
<%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
line which loads the javascripts, at the END of a file, in order to speed up page display. With the leaflet-rails gem, this isn't great, and will generate the problem described above. If putting the same line in the <head> section, the problem goes away...
P.S. I still have problems with the gem though, now I get
Error: No value provided for variable {s}
If I substitute "http://{s}.tile.osm.org/{z}/{x}/{y}.png" with "http://a.tile.osm.org/{z}/{x}/{y}.png" it works...don't think it's meant to work that way though...but that's a different issue...
I faced the same issue in rails.
Can't find variable L in production modeThe following steps did not help.
asset "leaflet" (Bowerfile)//= require leaflet/dist/leaflet.js (application.js)*= require leaflet/dist/leaflet.css (application.css)Rails.application.config.assets.precompile += ['leaflet/dist/leaflet.js', 'leaflet/dist/leaflet.css']public/assets/...Am I still missing something?
[solution]
This issue can be resolved by using CDN assets recommended by leaflet at http://leafletjs.com/examples/quick-start/
<link rel="stylesheet" href="https://unpkg.com/leaflet@1.0.1/dist/leaflet.css" /><script src="https://unpkg.com/leaflet@1.0.1/dist/leaflet.js"></script>However, I would prefer to use local cached precompiled assets bundled at my app-server instead of relying on a public CDN, network bandwidths, and a lot more external things.
Don't know if you were able to solve your issue. For me, I had forgotten to run:
rake assets:precompile
before deploying to production.