通常、ルートのパスには{entity_type}引数があり、Drupalはurl引数であるIDによってエンティティをロードします。たとえば、/node/{node}
を定義するルートは/node/5
で機能します。
エンティティをIDではなくUUIDでロードする必要があります。したがって、パスは/node/0ff3b31b-5abb-4377-bb00-af71882e38a4
のようになります。
ルート定義である種のマッピングを定義することにより、UUIDによってエンティティをロードすることは可能ですか、またはこのために独自のParamConverterを作成する必要がありますか?
はい、これには独自のparamコンバータが必要です。デフォルトの実装はUUIDでのみロードできます。
プライマリIDがシリアルIDである限り、UUIDによるロードはパフォーマンスが低下します。つまり、最初にエンティティクエリを実行してIDをフェッチし、それをロードする必要があります。
Berdirの回答についてコメントすることはできません。 drupal.orgでこの問題を参照したかっただけ https://www.drupal.org/node/2353611