Aller au contenu


Photo

[macOS][TUTORIEL]Introduction à CoreData

CoreData tutoriel

  • Please log in to reply
23 réponses à ce sujet

#21 Joanna Carter

Joanna Carter

    Broyeur de fèves

  • Contrôleur d'arômes
  • 1 887 messages
  • LocationPlestin-les-Grèves (22)

Posté 20 juin 2017 - 11:30

Petit exemple d'un modèle pour un de mes applis, qui gère un festival

 

Fichier joint  Model.png   86,56 Ko   0 téléchargement(s)



#22 Joanna Carter

Joanna Carter

    Broyeur de fèves

  • Contrôleur d'arômes
  • 1 887 messages
  • LocationPlestin-les-Grèves (22)

Posté 20 juin 2017 - 11:38

Et le code pour récupérer la liste des Events dans un NSFetchedResultsController :

  private var _fetchedResultsController: NSFetchedResultsController<CDEvent>?
  
  fileprivate var fetchedResultsController: NSFetchedResultsController<CDEvent>?
  {
    get
    {
      if _fetchedResultsController == nil
      {
        let request = CDEvent.fetchRequest() as NSFetchRequest<CDEvent>
        
        let daySort = NSSortDescriptor(key: "day.date", ascending: true)
        
        let startTimeSort = NSSortDescriptor(key: "startTime", ascending: true)
        
        let endTimeSort = NSSortDescriptor(key: "endTime", ascending: true)
        
        let nameSort = NSSortDescriptor(key: "artist.imageName", ascending: true)
        
        request.sortDescriptors = [daySort, startTimeSort, endTimeSort, nameSort]
        
        self._fetchedResultsController = NSFetchedResultsController(fetchRequest: request,
                                                               managedObjectContext: DataProvider.shared.viewContext,
                                                               sectionNameKeyPath: "day.narrative",
                                                               cacheName: nil)
      }
      
      do
      {
        try _fetchedResultsController!.performFetch()
      }
      catch
      {
        fatalError("Failed to initialize fetchedResultsController: \(error)")
      }
      
      return _fetchedResultsController
    }
  }


#23 Patyom

Patyom

    Cueilleur de cabosses

  • Membre
  • PipPipPip
  • 84 messages

Posté 20 juin 2017 - 20:22

Peut-on rajouter CoreData à un projet ?



#24 Joanna Carter

Joanna Carter

    Broyeur de fèves

  • Contrôleur d'arômes
  • 1 887 messages
  • LocationPlestin-les-Grèves (22)

Posté 20 juin 2017 - 21:49

Mais bien sûr. Il ne faut qu'ajouter une classe comme ci http://forum.cocoaca...egate/?p=147749 et créer un nouveau fichier .xcdatamodeld avec le même nom que tu mets dans le code.





0 utilisateur(s) li(sen)t ce sujet

0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)