Как добавить данные в базу данных Firestore (SwiftUI)IOS

Программируем под IOS
Ответить
Anonymous
 Как добавить данные в базу данных Firestore (SwiftUI)

Сообщение Anonymous »

У меня возникли проблемы при настройке добавления документа в базу данных FireStore.
Для справки, вот как сейчас выглядят мои файлы:
FirestoreDemoApp.swift

Код: Выделить всё

import SwiftUI
import FirebaseCore
import FirebaseDatabase
import FirebaseFirestore

class AppDelegate: NSObject, UIApplicationDelegate {
func application(_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool {

FirebaseApp.configure()

return true
}
}

@main
struct YourApp: App {
// register app delegate for Firebase setup
@UIApplicationDelegateAdaptor(AppDelegate.self) var delegate

var body: some Scene {
WindowGroup {
NavigationView {
ContentView()
}
}
}
}

let db = Firestore.firestore()
ContentView.swift

Код: Выделить всё

import SwiftUI

struct ContentView: View {
var body: some View {

// Error on line below
db.collection("wine").addDocument(data: ["year": 2017, "type": "pinot-noir", "label": "Peller Estates"])

Text("hi")
}
}

#Preview {
ContentView()
}
В строке 13 ContentView.swift (я указал, где) я получаю сообщение об ошибке: статический метод buildExpression требует, чтобы DocumentReference соответствовал представлению
Я понимаю, что это означает, что строка не соответствует представлению, и мне нужно представление, но я не понимаю, куда еще я мог бы поместить этот код, поскольку я слежу за FireStore документация, которая все еще использует формат AppDelegate и ViewController из раскадровки (я думаю), и я не совсем уверен, как настроить текущий формат SwiftUI ContentView и App.swift.
Для контекста здесь это руководство, которому я следую:
https://firebase.google.com/docs/firest ... data#swift
Вместе с видео codeWithChris (где идет строка кода откуда):
(около 8:43)

Подробнее здесь: https://stackoverflow.com/questions/787 ... se-swiftui
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»