#firebase #flutter #dart #google-cloud-firestore
#firebase #трепетание #dart #google-облако-firestore
Вопрос:
Я хочу проверить конкретное поле, если оно дублируется в другом документе или нет, прежде чем добавлять документ в свою коллекцию
await FirebaseFirestore.instance.collection('Cars').add({
'Car Owner Name': 'uj',
'Car Make': CarMake,
'Car Name': CarName,
'Car Year': CarYear,
'Plate Number': PlateNumber,
});
поле — это номер пластины
Комментарии:
1. Соответствуют ли номерные знаки определенному формату? Будут ли автомобили доступны для редактирования?
2. должно быть только> = 3 цифры
3. да, оно будет доступно для редактирования
Ответ №1:
Вы можете использовать PlateNumber
в качестве идентификатора документа. Если автомобиль с таким номерным знаком уже существует, он будет обновлен.
await FirebaseFirestore.instance.collection('Cars').doc(PlateNumber).set({
'Car Owner Name': 'uj',
'Car Make': CarMake,
'Car Name': CarName,
'Car Year': CarYear,
'Plate Number': PlateNumber,
});
Однако существуют некоторые ограничения на идентификаторы документов. Я предполагаю, что единственной проблемой будут косые черты ( /
символ), которые могут быть у некоторых номерных знаков. Вы можете заменить любые косые черты в идентификаторе документа каким-либо другим символом, который никогда не появится в номерном знаке. Я бы использовал этот %
символ, потому что он выглядит как косая черта, но с 2 дополнительными кругами 🙂