使用谷歌地图的Rails_admin地理编码器

时间:2015-08-05 08:57:03

标签: google-maps rails-admin ruby-on-rails-4.2 rails-geocoder

您好我正在进行一个项目,但他们需要在rails_admin中使用谷歌地图才能使用地理编码器,以便他们可以直接使用谷歌地图,而不仅仅是在他们可以做之前获取位置的坐标它

我已经检查了https://github.com/beyondthestory/rails_admin_map_field,但问题是我收到此错误

Fetching git://github.com/jasonl/rails_admin_map_field.git
fatal: remote error: 
  Repository not found.
Retrying git clone 'git://github.com/jasonl/rails_admin_map_field.git' "/home/simplybel/.rvm/gems/ruby-2.1.2/cache/bundler/git/rails_admin_map_field-b98ef0a93697bab8818013f8738b246fe83822a9" --bare --no-hardlinks --quiet due to error (2/3): Bundler::Source::Git::GitCommandError Git error: command `git clone 'git://github.com/jasonl/rails_admin_map_field.git' "/home/simplybel/.rvm/gems/ruby-2.1.2/cache/bundler/git/rails_admin_map_field-b98ef0a93697bab8818013f8738b246fe83822a9" --bare --no-hardlinks --quiet` in directory /home/simplybel/gamification/rigpirateprivate has failed.
fatal: remote error: 
  Repository not found.
Retrying git clone 'git://github.com/jasonl/rails_admin_map_field.git' "/home/simplybel/.rvm/gems/ruby-2.1.2/cache/bundler/git/rails_admin_map_field-b98ef0a93697bab8818013f8738b246fe83822a9" --bare --no-hardlinks --quiet due to error (3/3): Bundler::Source::Git::GitCommandError Git error: command `git clone 'git://github.com/jasonl/rails_admin_map_field.git' "/home/simplybel/.rvm/gems/ruby-2.1.2/cache/bundler/git/rails_admin_map_field-b98ef0a93697bab8818013f8738b246fe83822a9" --bare --no-hardlinks --quiet` in directory /home/simplybel/gamification/rigpirateprivate has failed.
fatal: remote error: 
  Repository not found.
Git error: command `git clone

' GIT中://github.com/jasonl/rails_admin_map_field.git' " /home/simplybel/.rvm/gems/ruby-2.1.2/cache/bundler/git/rails_admin_map_field-b98ef0a93697bab8818013f8738b246fe83822a9" --bare --no-hardlinks --quiet`在目录中 / home / simplybel / gamification / rigpirateprivate失败。

现在我不知道该怎么做或如何使它工作任何帮助都会有很大的帮助!使用rails 4.2,设计和地理编码器

1 个答案:

答案 0 :(得分:0)

应该可以embed google maps使用show的{​​{1}},list model视图中的iframe {/ 3}}:

<iframe
  width="600"
  height="450"
  frameborder="0" style="border:0"
  src="https://www.google.com/maps/embed/v1/place?key=API_KEY
    &q=Space+Needle,Seattle+WA" allowfullscreen>
</iframe>

您需要为字段设置pretty_value,该字段使用上面代码块中提到的iframe内容呈现地图。

RailsAdmin.config do |config|
  config.model 'Shop' do
    show do
      field :location do
        pretty_value do
          iframe_content(value).html_safe
        end
    end
  end
end

此处iframe_content呈现了iframe哪些谷歌地图要求您放置在您的页面上。需要调用html_safe以便rails知道此html内容已被清理并且不会导致任何安全风险,否则它会将其解释为纯字符串。

iframe_content必须是Shop模型中定义的方法。

您可能需要对此解决方案进行一些更改,它可能无法立即生效。希望这会有所帮助。