Flutter - PlatformException: ошибка, недействительная ссылка на документ. Ссылки на документы должны иметь четное количество сегментов, но пользователи имеют 1, ноль - PullRequest
0 голосов
/ 15 марта 2020

Я хотел получить данные моих пользователей из облачного пожарного магазина. Сначала он работал, но теперь возникает ошибка.

"PlatformException (PlatformException (ошибка, недопустимая ссылка на документ. Ссылки на документы должны иметь четное количество сегментов, но у пользователей 1, ноль))"

String name = "", email = "", pnumber = "", imgUrl = "", bio = "", posted = "", applied = "", rating = "", saved = "";
String url;
final formKey = new GlobalKey<FormState>();
final databaseReference = Firestore.instance;

String uID;

  @override

  void initState() {

    super.initState();
    uID = widget.uID;
    print("UID  " + uID);
    getUser();
  }

void getUser() {
    try {
      databaseReference
          .collection('users')
          .document(uID)
          .get()
          .then((DocumentSnapshot ds){
        if (ds.exists) {
          name = ds.data['fullname'].toString();
          print(name);
          email = ds.data['email'].toString();
          print(email);
          pnumber = ds.data['pnumber'].toString();
          print(pnumber);
          imgUrl = ds.data['imgUrl'].toString();
          print(imgUrl);
          bio = ds.data['bio'].toString();
          print(bio);
          posted = ds.data['posted'].toString();
          print(posted);
          applied = ds.data['applied'].toString();
          print(applied);
          rating = ds.data['rating'].toString();
          print(rating);
          saved = ds.data['saved'].toString();
          print(saved);
          print(ds.data['fullname'].toString());

        } else {
          print("No such user");
        }
      });
    } catch (e) {
      print(e.toString());
    }
  }

1 Ответ

1 голос
/ 15 марта 2020

Это почти наверняка, потому что uID - пустая строка. Проверьте это перед тем, как перейти к Firestore.

...