Core Data : optionnal, transient, indexed
Philippe49
Membre
Question 1
Quelq'un aurait-il sous la main une définition claire de ces trois options pour les attributes ?
Il me semble avoir compris transient : Attribut présent dans le model de l'entité mais non enregistré.
Question 2
J'ai défini un attribut "transient" , et j'ai laissé "undefined" pour le type de l'attribut. Le programme marche bien, s'enregistre correctement en ne prenant pas en compte cet attribut, mais je ne suis pas trop sur de "undefined".
Quelq'un aurait-il sous la main une définition claire de ces trois options pour les attributes ?
Il me semble avoir compris transient : Attribut présent dans le model de l'entité mais non enregistré.
Question 2
J'ai défini un attribut "transient" , et j'ai laissé "undefined" pour le type de l'attribut. Le programme marche bien, s'enregistre correctement en ne prenant pas en compte cet attribut, mais je ne suis pas trop sur de "undefined".
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Après je saisis moins clairement la Note. Dans mon cas j'ai déclaré mon attribut en "undefined", et j'ai codé dans mon .h le getter pour créer effectivement l'objet en autorelease. J'obtiens l'effet voulu. Cela voudrait dire que je ne peux pas espérer un fonctionnement complet du undo-redo ?
Pour le reste, un attribut transient est assez souvent une valeur calculée d'après d'autres valeurs d'attributs, utilisée en lecture seule et pour laquelle un "get" seul est suffisant, sans même la déclarer dans le Data Model, genre :
Sinon, je n'ai jamais eu besoin de valeurs "transients" (volatiles dirons-nous) non dérivées par calcul de valeurs non "transients", et ne sais donc pas si le undo-redo est inefficace.
C'est d'ailleurs comme cela que fait Hillegass.
Bon mais je trouvais intéressant d'en avoir la trace visuelle dans le model. Je suppose que les attributs "transients" (volatiles) sont ignorés lors du désarchivage , il semble même que les autres aussi si je regarde le métadata