Authenticated User β€œUser Reference (users ref)” not available in FlutterFlow, causing Firestore query filters to resolve as β€œUnknown” and fail data fetching

Integrations

🧾 Issue Summary for FlutterFlow Support πŸ“Œ Project Context

  • Platform: FlutterFlow (Web Builder)

  • Backend: Firebase (Firestore + Authentication)

  • App Type: Journaling / Reflection App

  • Core Flow:

    • User logs in via Firebase Auth

    • User creates a reflection (stored in Moments collection)

    • Each moment is linked to a user via a Doc Reference (users)

    • UI fetches latest moment using:

user == current user reference

🧱 Firestore Structure

  1. users collection Fields:

  • uid (String)

  • email

  • display_name

  • created_time

  • etc. πŸ‘‰ Document ID = Firebase Auth UID πŸ‘‰ uid field = same value (verified)

  1. Moments collection Fields:

  • user β†’ Doc Reference (users) βœ…

  • reflection β†’ String

  • mood β†’ String

  • context β†’ List

  • created_at β†’ DateTime βš™οΈ What Was Working

  • Firebase Authentication works correctly

  • Users are created in Firebase Auth

  • Users collection exists and matches UID

  • Moments documents are being created successfully

  • Firestore rules are working (no permission errors now) ❗ Current Critical Issue πŸ”΄ Problem 1: "User Reference" Not Available In FlutterFlow: Location:

  • Create Document β†’ Moments β†’ user field

  • Backend Query β†’ Filter (user == ...) Issue: Under:

Authenticated User

πŸ‘‰ All options are greyed out Specifically:

  • ❌ User Reference (users ref) is NOT selectable

  • ❌ Only fields like email, UID, etc. appear (non-reference)

  • ❌ Selecting anything results in:

Unknown ❌

πŸ”΄ Problem 2: Query Filter Not Working Query:

Moments
Filter: user == [Unknown]
Order: created_at DESC

πŸ‘‰ Because value is Unknown, query returns no data πŸ”΄ Problem 3: UI Shows Placeholder Data Due to failed query:

  • pMood

  • pReflection

  • "Context" πŸ‘‰ These are fallback/static placeholders πŸ” What We Tried (Step-by-Step) βœ… Step 1: Verified Firestore schema

  • user field is Doc Reference (users)

  • users collection exists

  • UID matches document ID βœ… Step 2: Fixed Security Rules

  • Removed restrictive rules

  • Enabled authenticated access βœ… Step 3: Verified Data Creation

  • Moments documents are being created

  • user field stores correct reference path:

/users/{uid}

What have you tried so far?

βœ… Step 4: Attempted Binding Tried to set:

Authenticated User β†’ User Reference (users ref)

πŸ‘‰ But:

  • Option is greyed out

  • Not selectable

  • Results in "Unknown" βœ… Step 5: Checked User Collection Mapping Attempted to locate:

  • User Collection

  • User Document mapping πŸ‘‰ Could NOT find this setting in current FlutterFlow UI 🧠 Expected Behavior FlutterFlow should allow:

Authenticated User β†’ User Reference (users ref)

So that:

Moments.user == current user reference

❌ Actual Behavior

  • "User Reference" is not accessible

  • Authenticated User does NOT expose document reference

  • Queries fail due to "Unknown" value πŸ“Έ Screenshots Provided (Attach these when you send)

  1. Create Document β†’ user field (greyed options)

  2. Query filter showing Unknown

  3. users collection (correct structure)

  4. Moments collection (correct structure) 🎯 Specific Questions for FlutterFlow

  5. Why is Authenticated User β†’ User Reference not available/selectable?

  6. Where is User Collection Mapping configured in the current UI?

  7. How to properly bind:

Firebase Auth user β†’ users collection document

  1. Is this a bug or a missing configuration step?
    🧾 Current Status AreaStatusFirebase Setup
    βœ… CorrectFirestore Schema
    βœ… CorrectData Creation
    βœ… WorkingSecurity Rules
    βœ… WorkingFlutterFlow Binding
    ❌ BrokenQuery Execution
    ❌ Failing
    πŸ§˜β€β™‚οΈ Final Note (Optional to include) We have spent significant time debugging and believe the issue is not in Firebase but in FlutterFlow's inability to expose the authenticated user's document reference.

Did you check FlutterFlow's Documentation for this topic?
No
1
2 replies