web-dev-qa-db-ja.com

同じリーフレットマップにポイントとポリゴンを含めるにはどうすればよいですか?

2つのコンテンツタイプがあります

  1. 地図上にマーカーを配置するために住所フィールドをジオコーディングする場所
  2. Geojsonフィールドを使用して地図上に複雑な形状を作成する境界

同じ地図上に両方のコンテンツタイプを表示するには、ビューを使用する必要があります。私はどちらか一方しかできないようです。

例として、選挙区の境界と投票所を示す地図を考えてみましょう。

2
Nigel Waters

ナイジェルウォーターズはそれを正しいとしています。詳細はこちら。私は都市と州のためにこれをしました。都市にはポイントを使用し、州にはポリゴンを使用しました。手順は次のとおりです。

要件:

  • Geofieldモジュール
  • リーフレットモジュール
  • リーフレットビューモジュール(リーフレットのサブモジュール)

手順:

  • CityとStateの2つのコンテンツタイプを作成します。
  • タイプGeofieldのフィールドを作成し、「Location」と呼びます
  • フィールドウィジェットとしてGeoJSONを選択します
  • 両方のコンテンツタイプに場所フィールドを追加する
  • 都市を作成します。場所には GeoJSON Point データを入力します
  • 状態を作成します。場所には GeoJSON Polygon データを入力します
  • ページ表示付きのビューを作成する
  • 場所フィールドをビューに追加する
  • 州と市のコンテンツタイプでビューをフィルタリングする
  • ビューの形式をリーフレットマップに設定する
  • ビューは写真1のようになります。
  • [ページを表示]をクリックします
  • 写真2のようなマップが表示されます。

Viewenter image description here

3
pferlito

私自身の質問に答えるには、両方のコンテンツタイプで同じフィールドを使用します。ポイントとポリゴンの両方を受け入れるgeojson(geofield)フィールドを使用して、ビューで単一のリーフレットマップにマージしました。

2
Nigel Waters

同じビューに複数のコンテンツタイプを表示するには:

  • ビューを編集する
  • "Filter Criteria"の下で "Content:Type"をクリックします
  • [コンテンツタイプ]セクションで両方のコンテンツタイプを選択します
  • 「適用」をクリックします