March 29, 2012 at 10:50 am #324788
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!April 6, 2012 at 5:41 pm #325026
Sorry, but it doesn’t look like it’s posible to do by querying a property on the model.
The DataType has these properties:
The Field has these properties:
The Relationship has these properties:
The 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.April 10, 2012 at 11:44 am #325104
Thanks! I was doing exactly what you suggested but I wanted to know if there was a “more proper” way of doing it.