2017-06-20 6 views
0

Kann ein Datenmodell zwei oder mehr Tabellenansichten enthalten? Ich bin mit zwei Modellen zur Zeit und habe einige Probleme wurde:Zwei Tabellenansichten, zwei Modelle

class Soccer: Object { 
    dynamic var player = "" 
    dynamic var highscore = "" 
    dynamic var talents = "" 
} 

class Cricket: Object { 
    dynamic var player = "" 
    dynamic var highscore = "" 
    dynamic var talents = "" 
} 

1 Tableview sollen Daten aus dem Soccer Modell erhalten, den 2. Tableview vom Cricket Modell. Ich verwende Realm.isEmpty zu überprüfen, ob ich einen Realm, wenn die App startet habe, in meinem AppDelegate:

class SetUpData { 
static func defaults() { 

    let realm = try! Realm() 

    guard realm.isEmpty else { return } 

    try! realm.write { 
     realm.add(Article.self()) 
    } 
    } 
} 

Diese Pre-auffüllt meine SoccerTableViewController UI. Aber ich kann nicht das gleiche Ergebnis mit CricketTableViewController. erreichen. Ich mache alles im Code und versuche, den besten Weg zu lernen, um mehrere Tabellenansichten mit Realm Swift zu füllen.

+0

Warum füllen Sie Ihre Datenbank mit 'Article' Objekt, wenn Sie' Cricket' oder 'Soccer' Objekte benötigen? 'Realm.isEmpty' wird nicht wahr, wenn Sie ein Objekt (irgendeine Art von Objekt) hinzugefügt haben, also müssen Sie' Soccer'- und 'Cricket'-Objekte nach dieser' guard'-Anweisung hinzufügen. Oder Sie können separat prüfen, ob Ihre Datenbank beide Arten von Daten enthält, indem Sie nach ihnen suchen: 'realm.objects (Cricket.self) .count == 0' und' realm.objects (Soccer.self) .count == 0' . – danieltmbr

+0

Entschuldigung. Ich war Kopie und Einfügen von einem anderen Projekt. 'Article.self()' sollte 'Soccer.self() sein. –

+0

Sie können die Schnittstelle oder Oberklasse verwenden, um konkrete Objekte von Fußball und Cricket zu halten. –

Antwort

1

Meinten Sie so?

+0

Das sieht gut aus! Möglicherweise. Wird morgen überprüfen. Es ist spät. Gib mir bitte einen Tag. Ich werde abgewischt. Es ist 4:07 Uhr, wo ich bin: 0 –

+0

Entschuldigung für die Verspätung. Dies funktioniert nicht. In Realm erben Modellklassen von 'Object' nicht von anderen Klassen. Es gibt "Listen", die wie Arrays funktionieren, aber ich habe nicht herausgefunden, wie man sie benutzt, um diese Aufgabe zu erfüllen. –

+0

Haben Sie versucht, 'Sport' von' Objekt' zu erben? wie ich aktualisiere – ovo

Verwandte Themen