Filtered layer by user — Set some features visible/editable or not for some users
定義
表示されるフィルター機能を使用すると、ログインしているユーザーに基づいてマップに表示されるデータをフィルター処理できます。Lizmap は属性テーブルの列を使用するため、ベクター レイヤーのみをフィルター処理できます。
現在、フィルタ処理は、接続されているユーザー グループの ID が使用されています。QGISサーバーへのすべての要求に有効です:
地図上に表示されるベクターレイヤー画像
地物情報。 地物情報 を参照
*レイヤー別に検索* 地物リストを表示します。 Locate by layer — The locating tool を参照。
drop-down lists of Editing forms from Value relation. See Editing — Edit a layer from the web interface
属性テーブルの表示など
フィルタリングには次の 2 種類があります。
属性に基づく
空間的な関係に基づく
空間リレーションシップによるフィルタリング
定義
このパネルでは、次のことができます:
空間フィルタリングに使用するポリゴン レイヤーを設定する
フィルタリングレイヤーでフィルタリングする必要があるレイヤーを設定する
前提条件
QGIS ServerのLizmapプラグインは、少なくとも Lizmap QGIS plugin 3.6 がインストールされている 必要 があります。そうでない場合は、フィルタが機能せず、すべてのデータが表示されます。 Lizmap QGISサーバープラグイン を参照してください。
ツールの設定
フィルタリングに使用するポリゴン レイヤーを選択する
このレイヤー内で、Lizmap グループを持つフィールドをカンマで区切って選択します。
このツールにフィルターするレイヤーを追加します。:
ボタン をクリックします。
フィルター処理するレイヤーを選択する
レイヤーの主キーを選択します。
表示と編集の両方の場合、または編集のみでフィルタリングするかを選択します。
**交差** または 包含 空間リレーションシップのいずれかを選択します。
テーブル内のレイヤーを編集するには、レイヤーを選択して、 ボタンをクリックするか、行をダブルクリックします。
テーブルからレイヤーを削除するには、レイヤーを選択して、 ボタン。
ご参考までに、PostgreSQL レイヤーを使用する場合のパフォーマンスが向上します:フィルタリングまたはフィルター処理されたレイヤー、またはその両方。
属性によるフィルタリング
例
ビデオチュートリアルは次の: https://vimeo.com/83966790
ツールの設定
Lizmap Web クライアントでデータ フィルタリング ツールを使用するには、次の操作を行う必要があります。
Lizmap Web クライアントの 管理インターフェイスへのアクセス権 を持つ
この地物を設定する詳細な手順を次に示します。
警告
Lizmap Web Clientの管理画面のリポジトリのプロパティで、 匿名
やその他の関連するグループが :guilabel:` ログインでフィルタリングされている場合でも、常に完全なレイヤーデータを表示する ` にチェックされていないことを確認してください。 グループごとに権限を定義する を参照。
管理インターフェースでグループ ID またはユーザー ID を確認します。
グループ ID を知るには、管理インターフェイスに移動する必要があります :menuselection:` システム --> ユーザーグループ ` : ID は、各グループの名前の後に括弧で囲まれて表示されます (タイトル :guilabel:` 新規ユーザーのグループ ` )
または、ユーザー ID を知るために、そのログインを使用します。
必要なフィルタデータであるすべてのベクターレイヤーに対して、この機能を表示する権限を持つ各行のIDを保持するテキスト列を追加するだけです。
*この列* を属性テーブルの各行に ID (電卓などを使用) で入力します。
``all`` を一部の行の値として設定して、フィルタを無効にできます: すべてのユーザーにこれらの行のデータが表示されます。
行のこの列の値がユーザー グループに対応していない場合、データはユーザーのデータとして表示されません。
テーブルにレイヤーを追加 :guilabel:` ユーザー別にデータをフィルター ` パネル。
ボタン をクリックします。
ドロップダウンリストからレイヤーを選択する
ID を持つフィールドを選択します。
フィールドにグループ ID ではなくユーザー ID が含まれている場合は、チェックボックスをオンにします。
テーブル内のレイヤーを編集するには、レイヤーを選択して、 ボタンをクリックするか、行をダブルクリックします。
テーブルからレイヤーを削除するには、レイヤーを選択して、 ボタン。
警告
すべてのフィルター対象のレイヤーに対して、クライアント キャッシュとキャッシュ サーバーを無効にします。そうしないと、各接続間またはユーザーログアウトの間に表示されるデータは更新されません。
編集
If you have enabled the edition (see Editing — Edit a layer from the web interface) on the filtered layer, the field containing the ID will be editable with:
自分のログインまたは
all
のいずれかの管理者以外のユーザーのコンボボックスまたは、管理者ユーザーの値を書き込む行編集