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サーバープラグイン を参照してください。
ツールの設定
フィルタリングに使用するポリゴン レイヤーを選択する
Choose the field in this layer which has Lizmap groups or users, separated by a comma.
Choose between Users or Groups according to the content of your previous field.
このツールにフィルターするレイヤーを追加します。:
ボタン をクリックします。
フィルター処理するレイヤーを選択する
レイヤーの主キーを選択します。
表示と編集の両方の場合、または編集のみでフィルタリングするかを選択します。
**交差** または 包含 空間リレーションシップのいずれかを選択します。
テーブル内のレイヤーを編集するには、レイヤーを選択して、 ボタンをクリックするか、行をダブルクリックします。
テーブルからレイヤーを削除するには、レイヤーを選択して、 ボタン。
ご参考までに、PostgreSQL レイヤーを使用する場合のパフォーマンスが向上します:フィルタリングまたはフィルター処理されたレイヤー、またはその両方。
属性によるフィルタリング
例
A video tutorial is available on Vimeo.
ツールの設定
Lizmap Web クライアントでデータ フィルタリング ツールを使用するには、次の操作を行う必要があります。
Lizmap Web クライアントの 管理インターフェイスへのアクセス権 を持つ
この地物を設定する詳細な手順を次に示します。
警告
Lizmap Web Clientの管理画面のリポジトリのプロパティで、 匿名
やその他の関連するグループが :guilabel:` ログインでフィルタリングされている場合でも、常に完全なレイヤーデータを表示する ` にチェックされていないことを確認してください。 グループごとに権限を定義する を参照。
管理インターフェースでグループ ID またはユーザー ID を確認します。
グループ ID を知るには、管理インターフェイスに移動する必要があります :menuselection:` システム --> ユーザーグループ ` : ID は、各グループの名前の後に括弧で囲まれて表示されます (タイトル :guilabel:` 新規ユーザーのグループ ` )
または、ユーザー ID を知るために、そのログインを使用します。
必要なフィルタデータであるすべてのベクターレイヤーに対して、この機能を表示する権限を持つ各行のIDを保持するテキスト列を追加するだけです。
*この列* を属性テーブルの各行に ID (電卓などを使用) で入力します。
``all`` を一部の行の値として設定して、フィルタを無効にできます: すべてのユーザーにこれらの行のデータが表示されます。
行のこの列の値がユーザー グループに対応していない場合、データはユーザーのデータとして表示されません。
テーブルにレイヤーを追加 :guilabel:` ユーザー別にデータをフィルター ` パネル。
ボタン をクリックします。
ドロップダウンリストからレイヤーを選択する
ID を持つフィールドを選択します。
Choose between Users or Groups according to the content of your previous field.
テーブル内のレイヤーを編集するには、レイヤーを選択して、 ボタンをクリックするか、行をダブルクリックします。
テーブルからレイヤーを削除するには、レイヤーを選択して、 ボタン。
警告
すべてのフィルター対象のレイヤーに対して、クライアント キャッシュとキャッシュ サーバーを無効にします。そうしないと、各接続間またはユーザーログアウトの間に表示されるデータは更新されません。
編集
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
のいずれかの管理者以外のユーザーのコンボボックスまたは、管理者ユーザーの値を書き込む行編集