• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Passing an EOGenericRecord Refrence in a Direct Action
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Passing an EOGenericRecord Refrence in a Direct Action


  • Subject: Re: Passing an EOGenericRecord Refrence in a Direct Action
  • From: Daniel Eggert <email@hidden>
  • Date: Mon, 19 Sep 2005 19:58:05 +0200

I think I'll go for this solution. Should be possible to wrap that PK code up in some nice and cosy java methods.

/Daniel

Mantra: Deliver yesterday, code today, think tomorrow.


On Sep 19, 2005, at 6:48 PM, Chuck Hill wrote:

Me, I'd swallow my lilly white purity inclinations and just expose the PK in this case. Or don't expose it and use EOUtilities. primaryKeyForObject(EOEditingContext ec, EOEnterpriseObject object) to get at it. EOUtilities also has a method to get an object based on the PK. I don't see any reason to not use the PK in this case, it has no meaning to the user, just a unique bit of data. You already have one unique, meaningless bit of data, why add another?

Chuck

On Sep 19, 2005, at 8:44 AM, Daniel Eggert wrote:



On Sep 19, 2005, at 4:46 PM, Arturo Perez wrote:



Daniel Eggert wrote:



Hi,
My App displays a list of items. When the oser clicks on one, I want to display a bookmarkable direct action with info about the item.
How do I go about passing a reference to an item (or its EOGenericRecord subclass instance)?
The primary key is not a class attribute, and the Apple docs say that exposing the primary keys is a bad idea:




Primary keys and foreign keys should not be marked as class properties. This is for two reasons: Enterprise objects have no knowledge of the primary and foreign keys of the tables from which they are mapped, and these keys are of no use to your business logic. Also, to ensure that the automatic primary key generation feature of Enterprise Objects is properly invoked, primary keys must not be marked as class properties.



What to do?
/Daniel





You should create an alternate key (which is a technical, RDB term BTW) to use in your direct action. Add another unique column to your table or create a mapping table. Any number of ways to do it.

-arturo




Thanks. Is there an easy way to have either the database or WebObjects maintain this alternate key? Or do I need to ensure the uniqueness myself?


The mapping table is a table of unique IDs (that I maintain myself) and a reference to my item? Or is there someting more subtle to it?

Was hoping that someone (Apple?) already coded a solution for this trivial problem.

/Daniel

_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


References: 
 >Passing an EOGenericRecord Refrence in a Direct Action (From: Daniel Eggert <email@hidden>)
 >Re: Passing an EOGenericRecord Refrence in a Direct Action (From: Arturo Perez <email@hidden>)
 >Re: Passing an EOGenericRecord Refrence in a Direct Action (From: Daniel Eggert <email@hidden>)
 >Re: Passing an EOGenericRecord Refrence in a Direct Action (From: Chuck Hill <email@hidden>)

  • Prev by Date: Re: Deploying on Development System
  • Next by Date: Re: Deploying on Development System
  • Previous by thread: Re: Passing an EOGenericRecord Refrence in a Direct Action
  • Next by thread: Re: Passing an EOGenericRecord Refrence in a Direct Action
  • Index(es):
    • Date
    • Thread