Form filtering — Filter layer data based on field values

定義

‎このツールは、いくつかのフィールドに基づいて、左パネルにフォームを表示し、ユーザーがさまざまなフォーム入力でレイヤーデータを検索することができます:コンボボックス、チェックボックス、オートコンプリートを持つテキスト入力、最小と最大の日付の間のスライダー付き日付セレクターなど。‎

警告

database レイヤーでのみ動作します: PostgreSQL (推奨)、SpatialiteとGeoPackage。‎

‎SQL ステートメントを使用して、Lizmap はデータを照会して取得します。‎

  • ‎現在のフィルタの機能の合計数‎

  • ‎一部のフィールドの固有値 (固有値の型など)‎

  • ‎数値フィールドまたは日付フィールドの最小値と最大値‎

  • ‎現在のフィルタのデータの範囲‎

注釈

The Export button in the Filter panel is linked to the attribute table tool.

‎例‎

‎例を含むビデオを見ることができます。‎: https://vimeo.com/331395259

‎前提条件‎

‎レイヤーは WFS として公開する必要があり ( WFS/OAPI を参照)、主キーは 、同様に公開する必要があります。 :guilabel:` レイヤプロパティ ` で同様に公開する必要があります。‎

‎ツールの設定

../../_images/interface-add-form-filter.jpg

There is a tab in the Lizmap plugin which lets you configure the filter inputs based on the layer fields. You can add one or more fields for one or more layer. If you add fields from 2 or more different layers, Lizmap Web Client will show a combo box to allow the user to choose the layer to filter. Selecting a layer will refresh the form and deactivate the current filter.

  • ‎フィルタフォームに追加する必要がある各フィールドに対して、プラグインテーブルに行を追加する必要があります。各フィールドに対して、いくつかのオプションを設定する必要があります。‎

    1. ボタン add_layer_svg をクリックします。

    2. ‎**Layer** : ソースレイヤー。‎

    3. ‎**Title** : タイトルは、フォーム入力の上に表示されます。例えば、「カテゴリ」という名前のレイヤーフィールドの「カテゴリを選択」。‎

    4. ‎**Type** : フォーム入力の種類はテキスト、固有の値、日付、数値 です。‎

    5. ‎**Field** : (データベーステーブル内の) フィールド名はテキスト、固有の値、および数値タイプのみです。‎

    6. ‎**Min date** : オブジェクトの開始日を含むフィールド (イベントの "start_date" など)。これは Date タイプでのみ必要です。データに日付フィールドが 1 つしかない場合は、最小日付フィールドで選択する必要があります。‎

      • ‎**最大日付** : データの終了日を含むフィールド。日付を含む 2 つのフィールドがあり、1 つは開始日、もう 1 つは終了日を区別できます。ない場合は、 最小日付最大日付 に同じフィールド名を使用する必要があります。‎

      • ‎**形式** : 固有値 の形式のみ。コンボボックスを表示する select 、または各個別の値に対して1つのチェックボックスを表示する チェックボックス を指定できます。個別の値は、lizmap Web クライアントによって動的に照会されます。‎

    7. ‎**スプリッター** : 固有値 タイプのみ。区切り記号でフィールド値を分割する場合に使用します。例えば、``文化,環境``は、スプリッター `, ` で``文化``と``環境``に分割することができます。‎

  • ‎テーブル内のレイヤーを編集するには、レイヤーを選択して、 edit_layer_svg ボタンをクリックするか、行をダブルクリックします。‎

  • ‎テーブルからレイヤーを削除するには、レイヤーを選択して、 remove_layer_svg ボタン。‎

  • ‎レイヤーを上下に移動するには、レイヤーを選択して down_layer_svg または up_layer_svg ボタン。lizmapでも順序が変わります。‎

‎異なるフォーム入力タイプの説明

‎テキスト‎

‎これは最も単純な型です。このタイプの入力では、ユーザーには古典的なテキスト入力が表示されます。任意のテキストを入力して検証できます。自動補完はデフォルトで有効になされており、これは、Lizmap がこのフィールドの固有の値を取得することを意味します。これは、一部のデータセットが大きすぎて、このオートコンプリート地物が重すぎる場合に、将来的にオプションになる可能性があります。‎

‎作成されるフィルタは次のようになります。‎

"field" LIKE '%foo%'

日付

‎この入力タイプは、選択した 2 つの値の間を検索できるように、2 つのハンドルを持つスライダーを表示します。2 つのテキスト入力も表示され、手動で最小日付と最大日付を設定するために使用できます。‎

‎日付は日付に "切り捨て" されます (時間、分、秒などの時間データは表示されません)。‎

‎スライダーステップはハードコードされており、1日86400 秒です。‎

‎作成されるフィルタは次のようになります。‎

( ( "field_date" >= '2017-04-23' OR  "field_date" >= '2017-04-23' ) AND ( "field_date" <= '2018-06-24' OR  "field_date" <= '2018-06-24' ) )

‎数値‎

‎この入力タイプは、選択した 2 つの値の間を検索できるように、2 つのハンドルを持つスライダーを表示します。2 つのテキスト入力も表示され、手動で最小値と最大値を設定するために使用できます。‎

‎作成されるフィルタは次のようになります。‎

( ( "field" >= 100 ) AND ( "field_date" <= 200 ) )

‎固有値‎

‎Lizmap はデータを照会して、フィールドの個別の値を取得します。 select または チェックボックス の2つの異なる入力タイプを選択できます。‎

‎分割テキストを指定した場合,例えば**`, **、lizmapは区切られたテキスト値の固有の値を検索します。たとえば、1 つの地物 ``文化,環境` の値は、スプリッター `, ` で``文化``と``環境``に分割されます。フォーム入力で 文化 または 環境 を選択すると、この地物が表示されます。‎

‎2 つの異なる入力タイプを表示することができます。‎

  • ‎**コンボボックス** : このタイプは、フィールドの個別の値のリストをコンボボックスに表示します。ユーザーは、値の中から 1 つの項目のみを選択できます。‎

  • ‎**チェックボックス** :このタイプは、フィールドの個別の値と同じ数のコンボボックスを表示します。データは、チェックされた項目間で UNION でフィルタリングされます。‎

‎作成されるフィルタは次のようになります。‎

( "field_thematique" LIKE '%Cuisine%'  OR "field_thematique" LIKE '%Ecocitoyen%'  )