Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 1055261
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 16, 20262026-05-16T17:32:08+00:00 2026-05-16T17:32:08+00:00

I only have one managed object context. I have modified the managed object store

  • 0

I only have one managed object context.

I have modified the managed object store though.

There are certain fields that I would like to add to every managed object. It would take far too much time to add them all one by one to every object in my system, so I decided to add them programmatically to the managed object model. In the application delegate, I first do:

managedObjectModel = [[NSManagedObjectModel mergedModelFromBundles:nil] retain];

Then I iterate through all the entities in the model and modify them and set the new property array for each one:

for (NSEntityDescription *entity in entities) {
    NSAttributeDescription *idAttribute = [[NSAttributeDescription alloc] init];
    [idAttribute setName:@"id"];
    [idAttribute setAttributeType:NSStringAttributeType];
    [idAttribute setOptional:NO];
    [idAttribute setIndexed:YES];

and so on.

It seems to mostly work fine. I run into problems when I am trying to add an object to a new one-to-one relationship I created. I create the objects from the same managed object context:

 self.action = [NSEntityDescription insertNewObjectForEntityForName:@"MobileObjectAction" inManagedObjectContext:managedObjectContext];
 self.user = [NSEntityDescription insertNewObjectForEntityForName:@"MobileUser" inManagedObjectContext:managedObjectContext];

When I get to

 [user setAction:action];

I get:
Terminating app due to uncaught exception ‘NSInvalidArgumentException’, reason: ‘Illegal attempt to establish a relationship ‘action’ between objects in different contexts …

What am I doing wrong?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-16T17:32:08+00:00Added an answer on May 16, 2026 at 5:32 pm

    Put a breakpoint in your code just before the two Entities are related. Make sure they are both instances of NSManagedObject.

    If they are, make sure both of them have their NSManagedObjectContext set and it is set to the same pointer.

    Obviously, make sure they are both valid objects.

    Most likely one of the above tests will prove false.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Assuming that we only have one consumer and our redelivery policy will allow the
I have a ScrollPane and JTable that should only have one row of data.
Dozer's documentation states that you should only have one instance of DozerBeanMapper running in
It looks like you can only have one lifecycle policy per plugin type in
I just learned (the hard way) that Java Component s can only have one
I have developed a application where i have a method that used managed object
I only have one actual device to test on, a Nexus One but I've
I only have one computer (running OS X), and need to test in both
In my application I am getting this error: You can only have one <head
I have two tables, users and hra. A user can only have one record

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.