Bug description
A single-select dictionary field (max_items: 1) with a dictionary which options() does not return the whole dataset (i.e. an API-backed dictionary) renders the stored id instead of the label when an existing entry is opened. The label only appears after the value is re-selected. A multi-select field using the same dictionary renders the label correctly on load.

How to reproduce
- Clone repository: https://github.com/helloiamlukas/no-label-for-dictionary-fields
- Open /cp/collections/things/entries/a1b2c3d4-0000-4000-8000-000000000001 in browser
Logs
Environment
EnvironmentLaravel Version: 13.16.1PHP Version: 8.3.22Composer Version: 2.9.7Environment: localDebug Mode: ENABLEDMaintenance Mode: OFFTimezone: UTCLocale: enCacheConfig: NOT CACHEDEvents: NOT CACHEDRoutes: NOT CACHEDViews: CACHEDDriversBroadcasting: logCache: fileDatabase: sqliteLogs: stack / singleMail: logQueue: syncSession: fileStoragepublic/storage: NOT LINKEDStatamicAddons: 0License Key: Not setSites: 1Stache Watcher: Enabled (auto)Static Caching: DisabledVersion: 6.21.0 Solo
Installation
Starter Kit using via CLI
Additional details
No response
Bug description
A single-select dictionary field (
max_items: 1) with a dictionary whichoptions()does not return the whole dataset (i.e. an API-backed dictionary) renders the stored id instead of the label when an existing entry is opened. The label only appears after the value is re-selected. A multi-select field using the same dictionary renders the label correctly on load.How to reproduce
Logs
Environment
Installation
Starter Kit using via CLI
Additional details
No response