Can Core Data mi consente di creare una nuova tabella a livello di codice? o se ho bisogno di questo ho bisogno di usare SQLite direttamente.crea una nuova tabella con i dati di ios-core al livello di programmazione
grazie
Can Core Data mi consente di creare una nuova tabella a livello di codice? o se ho bisogno di questo ho bisogno di usare SQLite direttamente.crea una nuova tabella con i dati di ios-core al livello di programmazione
grazie
Dal punto di vista CoreData, è in realtà non creare nuove tabelle, perché le tabelle del database sono solo un possibile tipo di negozio di persistenza associato con il modello di dati di base.
È tuttavia possibile creare nuove entità di dati di base utilizzando la classe NSEntityDescription. Nella documentazione di classe NSEntityDescription troverete questo:
Entity descriptions are editable until they are used by an object graph manager. This
allows you to create or modify them dynamically. However, once a description is used
(when the managed object model to which it belongs is associated with a persistent store
coordinator), it must not (indeed cannot) be changed. This is enforced at runtime: any
attempt to mutate a model or any of its sub-objects after the model is associated with a
persistent store coordinator causes an exception to be thrown. If you need to modify a
model that is in use, create a copy, modify the copy, and then discard the objects with
the old model.
Non ho mai provato a modificare uno in fase di esecuzione, quindi non so esattamente quanto bene questo funziona quando si dispone di un negozio di SQLite persistenza esistenti, se non del tutti. Ma probabilmente vale la pena giocare con NSEntityDescription per vedere se ti avvicina a quello che stai cercando di fare.
Generalmente il modello oggetto gestito viene creato graficamente utilizzando lo strumento di progettazione modello dati Xcode. (Se lo si desidera si può costruire il modello di programmazione in fase di esecuzione
Non penso sia possibile. dove sei in grado di farlo prima? – shebelaw
@Shanmugaraja G: Non è possibile modificare in modo programmatico i modelli dopo averli trascinati nell'archivio permanente. È comunque possibile modificare i modelli che non sono "bloccati" da un negozio. –
È possibile però:
Non è possibile modificare i modelli al volo in quanto sono più o meno fisso quando sono tirato in l'ambiente di runtime.
Grazie a Tim, come paragone a molti framework iOS, il coredata è un po 'caotico per farmi abituare. – shebelaw
Ben messo Tim ... –
@shebelaw: È piuttosto complesso iniziare, ma se hai bisogno di un richiamo, ti consiglio i libri di Big Nerd Ranch. Mettono le cose in parole povere, non battono neanche loro. http://www.bignerdranch.com/books è probabilmente più economico ottenere i libri su Amazon come copie di seconda mano, ma vale comunque la pena dare un'occhiata. –