django-fluent-contents的Google Maps小部件
项目描述
fluentcms-googlemaps
一个插件,用于在网站上显示Google Maps小部件。
此插件仍在开发中。它已在生产中使用,只需知道有两个主要区域需要改进
使用更好的GeoPosition小部件(例如,通过使用灯箱/弹出窗口)
使集群图标可配置。
安装
首先安装模块,最好在虚拟环境中安装。可以从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 暴露。
{% load fluent_contents_tags %}
{% render_content_items_media %}
此标签应放置在页面底部,所有插件渲染之后。有关更多配置选项(例如与 django-compressor 的集成) - 请参阅 模板标签文档。
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,直到所有字段都正确填写。所有标记将在解析结束后一次性创建。
贡献
如果您喜欢此模块,已经将其分支或希望改进它,请告诉我们!我们也欢迎拉取请求。:-)
项目详情
下载文件
下载适用于您的平台文件。如果您不确定选择哪个,请了解更多关于 安装软件包 的信息。
源分发
构建分发
fluentcms-googlemaps-1.4.tar.gz 的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 7f06850bc2d6b663a97ea6b362bb5f43c62f3179a78490a71859a323afbe8572 |
|
MD5 | 3ef1d33f8950b8318d12a97007f3e128 |
|
BLAKE2b-256 | fd21161178b948ee06678cd5f5b21ab5d0d0bdaf27adff2643ef44dae6db8e1c |