最近發現 Google Map 很好玩,想要玩玩 Ruby on Rails 上面的 Google Map,就找上了
YM4R 這個 Rails Plugin,發現 YM4R 使用 Google Map真是方便呀,彈指之間搞定。YM4R 這個 Plugin 就是讓Ruby on Rails 上面使用 Yahoo Map 跟 Google Map 的 Rails Plugin。以下介紹一下這個 YM4R 怎麼使用。
安裝:
ruby script/plugin install svn://rubyforge.org/var/svn/ym4r/Plugins/GM/trunk/ym4r_gm這個動作會把相關的 file copy 到 config,vendor/plugins, public/javascripts 裡面去,如此就把這個 YM4Rplugin 裝完了。
使用:
要使用這個 plugin 一共分成 controller 跟 view 兩個部份。
Controller:在 controller 裡面加入底下的 code ,底下的 code 是改自
這個網頁,他會 initial 一個 Gmap Object,顯示我們指定的位址。我們這裡舉台北為例子,台北的經緯度根據
Wikipedia ,為東經121.6度,北緯24.9度,放大的程度為 7,並且有一個 info_windows。
latitude = '24.9'
longitude = '121.6'
@map = GMap.new("map_div_id")
@map.control_init(:large_map => true, :map_type => true)
@map.center_zoom_init([latitude,longitude], 7)
marker = GMarker.new([latitude, longitude],
:title => "台北", :info_window => "我在台北呦~")
@map.overlay_init(marker)
View :
Google Map 使用方式都是 Javascript。要在 Ruby on Rails View 裡面使用方式,分成兩個步驟,第一個是在 head 裡面加入相關的 Javascript
<%= GMap.header %>
第二個就是在 Body 裡面,顯示剛剛在 controller 裡面設定完成的 @map 變數,這裡寬跟高都設定 600
<%= @map.to_html %>
<%= @map.div(:width => 600, :height => 600) %>
啟動:
請打入 http://localhost:3000/controller_name/ 就可以看到台北的 Google Map 了
等等,我都沒看到 Google API Key ?
是的,我們上面的例子都不用設定 Google API Key 的原因,是因為我們使用的 Domain 是 http://localhost:3000/ ,而這個 Plugin 已經預設裝入 http://localhost:3000/ 的 Google API Key 。
如果你想設定你的 Domain ,請到
config/gmaps_api_key.yml 裡面設定,請將你
申請的 Google API Key ,放入 production 設定底下。話說,我不知道為啥我明明跑的是 development mode,但是將申請好的 API Key 放在 development 底下他不 work,反正似乎只能放在 production mode 才可以 work。
延伸閱讀:
- Rails Google Maps Plugin 教學
- YM4R Project Hompage
分享到:
相关推荐
Rails::API 是 Rails 的精简版本,针对不需要使用完整 Rails 功能的开发者。 Rails::API 移除了 ActionView 和其他一些渲染功能,不关心Web前端的开发者可更容易、快速地开发应用程序,因此运行速度比正常的 Rails ...
在本篇内容中,我们将深入探讨如何利用Ruby on Rails(简称Rails)这一强大的Web应用程序框架来构建可伸缩且易于维护的RESTful API。Rails以其简洁优雅的语法、高效的开发速度以及良好的社区支持而闻名,这使得它...
2. 创建资源:使用`rails generate controller Posts`生成控制器,再用`rails generate scaffold Post title:string content:text`生成模型和相关的控制器、视图及路由。 3. 迁移数据库:编写迁移文件,更新数据库表...
[适合] Rails :red_heart: Ansible [适合] Rails :red_heart: Ansible (有一点帮助) Rails部署 简单吧? 将应用程序放在服务器上。 捆绑宝石。 应用迁移。 重新启动服务。 Easy Rails部署 git push master ...
Rails 基本模板参考: : Ruby on Rails Gemfile:定义应用程序正在使用的库的文件bundle install:基于Gemfile,安装所有库每次修改 Gemfile 时都应该运行bundle install gem 是 Ruby 的库RubyGems.org 是一个查找和...
RailsConsole 工具包 :wrench: :toolbox: 可配置的 Rails 控制台助手更快地查找记录,添加自定义助手,将您的控制台寿命提高 100%。安装将此行添加到应用程序的 Gemfile 中: gem 'rails_console_toolkit' 然后生成...
Rails电子邮件预览 使用此Rails引擎在浏览器中预览电子邮件。 与Rails 4.2+兼容。 一封电子邮件评论: 所有电子邮件预览的列表: REP带有两个主题:一个简单的独立主题和一个使用的主题。安装加 到Gemfile: gem '...
元素通过assert_dom , assert_dom_encoded , assert_dom_email进行声明,并且可以使用css_select选择dom的子集。 该gem是为Rails 4.2及更高版本开发的,不适用于以前的版本。 升级到Rails 4.2时,Nokogiri :: CSS...
rails_stack 食谱 TODO:在此处输入食谱说明。 例如,这本食谱使您最喜欢的早餐三明治。 要求 TODO:列出您的食谱要求。 确保包含本说明书对平台、库、其他说明书、软件包、操作系统等的任何要求。 例如 包裹 ...
webpack-rails, 将 web pack与你的Ruby on Rails 应用程序集成 不再维护webpack-rails 不再被维护。 有关详细信息,请参阅 #90. web pack-railsweb pack 为你提供了将 web pack集成到现有的Ruby on Rails 应用程序中...
Ruby on Rails,简称Rails,是基于Ruby语言的一个开源Web应用程序框架,它遵循MVC(Model-View-Controller)架构模式,旨在使Web开发过程更加高效、简洁。本压缩包中的"Ruby on Rails入门经典代码"提供了新手学习...
Rails::Cache::Extended 这允许为记录集合生成自动过期的缓存键 安装 将此行添加到应用程序的 Gemfile 中: gem 'rails-cache-extended' 然后执行: $ bundle 或者自己安装: $ gem install rails-cache-...
Rails :: Controller :: Testing 这个gem将assigns给控制器测试的内容... 如果您使用的是rspec-rails的旧版本,则可以在rails_helper手动添加模块。 RSpec . configure do | config | [ :controller , :view , :re
带有Flux(Alt)的React Rails截屏博客文章: : YouTube视频: : 这是截屏视频的代码,显示了如何将和集成到您的rails应用程序中。 我只使用不带npm的链轮,因此设置非常简单。 Alt( )React Rails( )Lodash( ...
允许您使用为Rails应用程序的前端供电。 是将前端工具像Ruby一样进行编程,纯属喜悦! :smiling_face_with_heart-eyes: 或在运行的检查。 产品特点 :high_voltage: :light_bulb: 即时服务器启动 :high_voltage: ...
Rails设置界面 一个Rails Engine来管理您的应用程序设置。 包括验证。 与Rails 5兼容。它与 gem兼容。 预习: 实时示例: : 如何添加到Gemfile gem 'rails-settings-ui'然后加gem 'rails-settings-cached'要么gem '...
使用Docker开发Ruby on Rails的配置文件 docker-compose up 利润! 你得到什么 一线开发环境的设置和启动: docker-compose up 。 一个易于安装的依赖关系可在新计算机上进行编码:Docker。 (与使用Vagrant时的两...
Rails数据库方案 Rails数据库模式的Autocomplete +提供程序。 特征 自动完成活动记录 根据当前上下文打开模式文件 设定值 将Rails语法设置为默认语法。 " * " : core : customFileTypes : " source.ruby.rails...
如果您在非Rails应用程序中需要类似的功能,请考虑直接使用(这是处理内幕消毒的原因)。 安装 将此行添加到您的应用程序的Gemfile中: gem 'rails-html-sanitizer' 然后执行: $ bundle 或将其自己安装为: $...
一个项目模板,用于为AWS Lambda快速创建一个新的Rails应用程序。 细节: Ruby 2.7运行时上的Railsv6.x。 集成JavaScript开发。 使用LibSass&Webpacker编译CSS / JS资产。 没有ActiveRecord。 阅读我们的指南...