[Bug] Linkage rule condition shows no options for Single Select field from SQL Collection despite correct field source being resolved

* Describe the bug

When configuring a Linkage Rule condition on a Single Select field that originates from a SQL Collection, the value dropdown shows “No data” instead of the available options. This happens even though NocoBase correctly recognizes the field as Single Select with the proper field source (the original collection) in the SQL Collection field configuration.

* Environment

  • NocoBase version: 2.0.53
  • Database type and version: PostgreSQL 16
  • OS: MacOS Catalina 10.15.8
  • Deployment Methods: Docker container
  • Docker image version: 2.0.53
  • NodeJS version: N/A

* How To Reproduce

  1. Create a SQL Collection that includes a Single Select field from another collection via a JOIN (e.g. status from anfragen-zuweisungen).
  2. In the SQL Collection field configuration, confirm that NocoBase correctly identifies the field as Einzelauswahl (Single Select) with the correct field source.
  3. Create a List block based on this SQL Collection.
  4. Add an action button and open Linkage Rules.
  5. Add a condition: select Current record / status → operator is not → attempt to select a value.
  6. Observe that the value dropdown shows “No data” / “Keine Daten” — no options are available.

Expected behavior

Since NocoBase already correctly resolves the field source of the Single Select field in the SQL Collection configuration, the same options should be available in the Linkage Rule value dropdown.

Screenshots

Screenshot 1: Linkage Rule value dropdown showing “Keine Daten” (no options available).

Screenshot 2: SQL Collection field configuration showing status correctly identified as Einzelauswahl with field source Anfragen-Zuweisungen.

Logs

N/A — no API errors observed. This appears to be a frontend issue where the resolved field metadata is not passed through to the Linkage Rule condition editor.

Thanks so much for reporting this! Before diving deeper into the bug, I’d like to share a bit of context on how the data works here, which might help narrow things down.

The “status” field values displayed in the linkage rule are pulled from the SQL collection, and the SQL collection’s “status” field gets its data from the Field source mapped to Anfragen-Zuweisungen / status.

Could you do a quick check — does the status field in your SQL collection have any options listed? If it appears empty, it might just need a sync. You can try hitting the “Sync from database” button in the SQL collection to pull in the latest options from the source. That might resolve the issue without needing a code fix!

Looking forward to hearing what you find.