Это может быть очень простой вопрос (извините!).
Я хотел бы связать базу данных MySQL с приложением Quiz в Swift 4. Поэтому я подключился к service.php и получил информацию с помощьюdecodable.
Как я могу получить доступ к этой информации, чтобы показать на этикетке?Нужно ли создавать новый массив и добавлять объекты?
import UIKit
struct Question: Codable {
let id: String?
let frage: String?
let antwort1: String?
let antwort2: String?
let antwort3: String?
let antwort4: String?
let correct: String?
let notiz: String?
let lernsektorID: String?
let lerneinheitID: String?
let lernbereichID: String?
let schwierigkeitID: String?
let redakteur: String?
let createdAt: String?
enum CodingKeys: String, CodingKey {
case id = "ID"
case frage = "Frage"
case antwort1 = "Antwort1"
case antwort2 = "Antwort2"
case antwort3 = "Antwort3"
case antwort4 = "Antwort4"
case correct = "Correct"
case notiz = "Notiz"
case lernsektorID = "LernsektorID"
case lerneinheitID = "LerneinheitID"
case lernbereichID = "LernbereichID"
case schwierigkeitID = "SchwierigkeitID"
case redakteur = "Redakteur"
case createdAt = "created_at"
}
}
var fragen = [Question]()
let url = "https://redaktion.pflegonaut.de/service.php"
let urlObj = URL(string: url)
URLSession.shared.dataTask(with: urlObj!) { (data, response, error) in
do {
self.fragen = try JSONDecoder().decode([Question].self, from: data!)
// can I use .append() here?
// maybe in a for loop?
} catch {
print(error)
}
}.resume()
Чтобы я мог использовать такие элементы, как:
//
// let randomizedQuestion = fragen.frage.randomElement()
//
// questionOutlet.text = randomizedQuestion
Спасибо!