- This topic has 2 replies, 2 voices, and was last updated 12 years, 7 months ago by ryouji_shiki.
-
AuthorPosts
-
ryouji_shikiMemberHello,
I am modifying the template crudEdit.jet to include a way to select a parent object without knowing the id, namely a “popup” list of values on which you double click the object’s description and it assigns the textbox its id.
Anyways, by now I am able to read the child object’s relationships and see if they are one to many or one to one and get the parent object’s primary key but I was wondering if there is a way to get the child object’s foreign key fields.
Is this possible?
Something like $fieldRelatedType/@primaryKey = ‘true’ in the example below but rather $dataType/@foreignKey = ‘true’ or similar…
... <jet:iterate select="$dataType/relationships" var="relationship"> <jet:setVariable select="$relationship/targetDataType" var="relatedType" /> <jet:choose> <jet:when test="string($relationship/@cardinality) = 'MANY'"> <!-- do nothing --> </jet:when> <jet:otherwise> <jet:iterate select="$relatedType/fields" var="fieldRelatedType"> <jet:choose> <jet:when test="string($fieldRelatedType/@primaryKey) = 'true'"> ...
Thanks for your time!
cconwayMemberSorry, but it doesn’t look like it’s posible to do by querying a property on the model.
The DataType has these properties:
fields
relationships
modifiers
annotateGetters
persistentThe Field has these properties:
primaryKey
dataType
description
collection
name
initialValue
type
visibility
modifiersThe Relationship has these properties:
targetDataType
reverseRelationship
cardinality
parentDataType
description
collection
name
initialValue
type
visibility
modifiersThe only way I can think to do it is to iterate the relationships looking for primary keys that match the fields in the current data type.
ryouji_shikiMemberThanks! I was doing exactly what you suggested but I wanted to know if there was a “more proper” way of doing it.
-
AuthorPosts