最近、開始していないプロジェクトのデータ モデルを変更する必要がありました。いくつかのエンティティに "ordered" 属性を追加し、約 10 のクラスで全体を再生成しました。
問題は、常に SIBAGRT 例外が発生していて、その理由が分からないことです。次のような管理対象オブジェクトの関数を呼び出すと発生します。
[currentArticle removePages:currentArticle.pages];
この行を使用して、すべてのページから記事を空にしようとしています。最初は、ページがなく、削除するものが何もないため、クラッシュする可能性があると思いました。だから私はこの行を次のように変えました:
if ([currentArticle.pages count ] > 0){
[currentArticle removePages:currentArticle.pages];
}
この特定の行はもう呼び出されていないことが判明しましたが、生成された別の関数で同じ SIBAGRT の問題が発生しました。
[currentAsset addMediasObject:currentMedia];
currentAsset と currentMedia の両方が null ではありません。po currentAsset が与える
$2 = 0x08870c50 <Asset: 0x8870c50> (entity: Asset; id: 0x8870cb0 <x-coredata:///Asset/t6C0C3F05-8242-4889-90B0-DDF9A86EE16924> ; data: {
arrowColor = nil;
gallery = nil;
id = 0;
medias = (
);
name = "Couv-La-vie-en-rose";
page = nil;
parentGallery = nil;
style = "full-page";
type = picture;
value = "";
})
po currentMedia が与える
$3 = 0x088778b0 <Media: 0x88778b0> (entity: Media; id: 0x8877910 <x-coredata:///Media/t6C0C3F05-8242-4889-90B0-DDF9A86EE16925> ; data: {
asset = nil;
"media_description" = "";
"media_uri" = "La-vie-en-rose.jpg";
"sub_uri" = "";
"thumbnail_uri" = "";
"video_id" = "Home_video_AH11";
})
「順序付けられた」属性を追加して全体を再生成する前は、完全に機能していました。
誰かが手がかりを持っているなら、それは大歓迎です。
乾杯!