On Jul 30, 2010, at 4:27 PM, David Holt wrote:


On 2010-07-30, at 1:04 PM, Ramsey Gurley wrote:


On Jul 30, 2010, at 3:58 PM, David Holt wrote:


On 2010-07-30, at 12:26 PM, Ramsey Gurley wrote:

On Jul 30, 2010, at 2:51 PM, David Holt wrote:

Hi all,

I would like to display one propertyKey for a recursive relationship and the rule doesn't seem to work as it does for a normal relationship to a different entity. Do I need to do something special for this case? The rule I am using has no effect and I am not sure why.

100 (entity.name = 'Activity' and propertyKey = 'parentActivity') => keyWhenRelationship = "activityTitle"

Thanks,

David

Looks like it should work... But you'll be writing a lot of rules that way. Try something like

(propertyType = 'r' and relationship.destinationEntity.name = 'Activity') => keyWhenRelationship = "activityTitle"

That didn't work.


If that doesn't work either, try refreshing your workspace.

That didn't work either.

What component are you using and what is it showing you instead? userPresentableDescription()?

I think I figured it out based on this hint. It is using the ERMODList, so it is creating embedded components which are different than I was thinking about. The rule is working for the to-one relationship, and it looks like I have to specify the displayPropertyKeys for the embedded lists in order to get them to display what I want. I guess I was thinking that the embedded list for a to-many would automatically just have the one key I had specified. Another thing that threw me is that it didn't change the Property Key label as I was expecting. It is still named as the relationship even though it is displaying the title.

That makes sense. If you want to change that to "Activity Title" you can set displayNameForProperty directly. By default, it is localized with the key "PropertyKey.parentActivity" but you can reassign that with the rule system using something like:

100: pageConfiguration = "ListEmbeddedActivity" and parentPageConfiguration = "SomethingSomething" and propertyKey = "parentActivity" => displayNameForProperty = "PropertyKey.activityTitle" [ERDDelayedLocalizedAssignment]

Or you could go with "EntityName.Activity" or whatever else suits you...

Ramsey



_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to