In QGIS 3.34.3, according to the doc:
Layer expression evaluates to a unique identifier of the layer. This can be the layer name @layer_name, the layer id @layer_id, the layer’s table name decode_uri(@layer, 'table') or anything that can uniquely identifies a layer.
(note: the 'field' word is missing there)
the "Layer field expression" of the Polymorphic Relation editing window can be set to @layer_name
or decode_uri(@layer, 'table')
but both these expressions evaluate to NULL within the Expression Builder:
In addition, @layer_name
does not exist in the available elements inside the Expression Builder and the 'table'
value is a handwritten keyword that I don't know what it refers to (it's not explained in the documentation).
Does anyone have some more details on this?