Class: QgsFeatureFilterModel

Provides a list of features based on filter conditions.

Features are fetched asynchronously.

Class Hierarchy

Inheritance diagram of qgis.core.QgsFeatureFilterModel

Base classes

QgsFeaturePickerModelBase

Provides a list of features based on filter conditions.

QAbstractItemModel

QObject

class qgis.core.QgsFeatureFilterModel[source]

Bases: QgsFeaturePickerModelBase

__init__(parent: QObject | None = None)

Create a new QgsFeatureFilterModel, optionally specifying a parent.

Parameters:

parent (Optional[QObject] = None)

extraIdentifierValue()
extraIdentifierValues(self) List[Any][source]

Allows specifying one value that does not need to match the filter criteria but will still be available in the model.

Added in version 3.10.

Return type:

List[Any]

signal extraIdentifierValuesChanged[source]

pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL

types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.

identifierField(self) str[source]

The identifier field should be a unique field that can be used to identify individual features. It is normally set to the primary key of the layer. If there are several identifier fields defined, the behavior is not guaranteed

Deprecated since version 3.10: Use identifierFields() instead.

Return type:

str

identifierFields(self) List[str][source]

The identifier field should be a unique field that can be used to identify individual features. It is normally set to the primary key of the layer.

Added in version 3.10.

Return type:

List[str]

signal identifierFieldsChanged[source]

pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL

types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.

abstract requestToReloadCurrentFeature()[source]
setExtraIdentifierValue()
abstract setExtraIdentifierValueToNull(self)[source]

Allows specifying one value that does not need to match the filter criteria but will still be available in the model as NULL value(s).

Added in version 3.10.

setExtraIdentifierValueUnguarded()
setExtraIdentifierValues(self, extraIdentifierValues: Iterable[Any])[source]

Allows specifying one value that does not need to match the filter criteria but will still be available in the model.

Added in version 3.10.

Parameters:

extraIdentifierValues (Iterable[Any])

setIdentifierFields(self, identifierFields: Iterable[str | None])[source]

The identifier field should be a unique field that can be used to identify individual features. It is normally set to the primary key of the layer.

Note

This will also reset identifier fields to NULL

Added in version 3.10.

Parameters:

identifierFields (Iterable[Optional[str]])