用于django fluent内容的google地图小部件

fluentcms-googlemaps的Python项目详细描述


https://img.shields.io/travis/django-fluent/fluentcms-googlemaps/master.svg?branch=masterhttps://img.shields.io/pypi/v/fluentcms-googlemaps.svghttps://img.shields.io/pypi/l/fluentcms-googlemaps.svghttps://img.shields.io/codecov/c/github/django-fluent/fluentcms-googlemaps/master.svg

fluentcms谷歌地图

用于django-fluent-contents在网站上显示谷歌地图小部件的插件。

这个插件正在开发中。 它已经在生产中使用,只需知道有两个主要区域需要改进:

  • 使用更好的地理位置小部件(例如,使用灯箱/弹出窗口)
  • 使群集图标可配置。

安装

首先安装模块,最好是在虚拟环境中。它可以从pypi安装:

pip install fluentcms-googlemaps

注意:在django 1.11上,您必须首先安装以下软件包:

pip -e git+https://github.com/philippbosch/django-geoposition.git@django-1.11#egg=django-geoposition

因为django-geoposition还没有兼容django 1.11的版本。

后端配置

首先确保项目是为django-fluent-contents配置的。

然后添加以下设置:

INSTALLED_APPS+=('geoposition','fluentcms_googlemaps',)GOOGLE_MAPS_API_KEY=None# Might be needed to define this.

将以下内容添加到urls.py

urlpatterns=[...url(r'^api/googlemaps/',include('fluentcms_googlemaps.urls')),]

之后可以创建数据库表:

./manage.py migrate

现在,可以将MapPlugin添加到您的PlaceholderField 以及PlaceholderEditorAdmin管理屏幕。

前端配置

确保所有插件媒体文件都由django-fluent-contents

{%loadfluent_contents_tags%}{%render_content_items_media%}

这个标签应该放在页面的底部,在所有插件呈现之后。 更多配置选项-如与Django压缩机集成- 请参阅template tag documentation

css代码

样式表代码故意省略,因为作者通常喜欢提供自己的样式。

javascript代码

javascript集成不需要配置。

默认情况下,插件包含所有必需的javascript代码。

如果需要,可以使用以下设置更改包含资源:

MAP_MARKERWITHLABEL_JS="fluentcms_googlemaps/vendor/markerwithlabel.js"MAP_MARKERCLUSTERER_JS="fluentcms_googlemaps/vendor/markerclusterer_compiled.js"MAPPLUGIN_JS="fluentcms_googlemaps/js/mapplugin.js"MAPSEARCH_JS="fluentcms_googlemaps/js/mapsearch.js"FLUENTCMS_GOOGLEMAPS_JS=(MAP_MARKERWITHLABEL_JS,MAP_MARKERCLUSTERER_JS,MAPPLUGIN_JS,)FLUENTCMS_GOOGLEMAPS_CSS={}

如果一个值定义为None,它将从前端媒体中排除。

HTML代码

如果需要,可以通过重新定义fluentcms_googlemaps/maps/default.html覆盖html代码。 此外,还可以创建其他映射样式并在FLUENTCMS_GOOGLEMAPS_STYLES中定义这些样式。 默认值为:

FLUENTCMS_GOOGLEMAPS_STYLES=(('default',{'title':_("Default"),'template':"fluentcms_googlemaps/maps/default.html",}),('search',{'title':_("Search field"),'template':"fluentcms_googlemaps/maps/search.html",'extra_js':(MAPSEARCH_JS,# = "fluentcms_googlemaps/js/mapsearch.js" unless MAPSEARCH_JS is redefined),}),)

默认情况下,将查找以下模板:

  • FLUENTCMS_GOOGLEMAPS_STYLES中显式定义的template选项。
  • 名为fluentcms_googlemaps/maps/{style}.html的模板。
  • 默认值;fluentcms_googlemaps/maps/default.html

导入数据

标记数据可以从csv文件导入,也可以接收地理编码。 可以使用自定义模板调用import_markers命令,将csv文件数据映射到标记字段。 例如:

manage.py import_markers /stores.csv  --title='{{Name}}' --group=1 --geocode='{{Address}} {{Zipcode}} {{City}} {{County}}' --geocoder=google --description="<p>{{Address}}<br>{{Zipcode}} {{City}}<br>{% if County == 'NL'%}The Netherlands{% else %}{{County}}{% endif %}</p>"

建议先添加--dry-run,直到所有字段都正确填充。 标记在所有解析结束时在单个事务中创建。

贡献

如果您喜欢这个模块,分叉它,或想改进它,请让我们知道! 也欢迎拉取请求。:-)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java为什么整数构造函数方法不再需要属性?   java单函数从广播接收器检索数据   Java类中的Scala设置器和获取器   JAVA MVC表选择的行ID和mysql db ID不同   java在Multimaps Guava中获取值   jakarta ee Intellij IDEA Java类在保存时不自动编译   java在另一个Spring实体中使用Spring实体   JTwitter库的安卓类一直在给我java。朗朗:温特韦尔。杰特维特。啁啾   java停止启动应用程序   java Jersey测试NoSuchMethodError   java如何处理合成元素上的注释   java崩溃shell无法通过ssh连接   java计算两个日期之间的天数后(取自edittext)如何在新的edittext中显示天数