Hi,
I am working on an extension of GoogleMapSelectableField, which manages this in a DataObject.
Currently it is so that it establishes a $has_one-relationship and thus receives a new tab. This also works great, but will not save the data.
Here are parts of the codes:
Page with Location:
class geoPage extends Page
{ …
static $has_one = array(
'Location' => 'Location'
);
…
public function getCMSFields()
{ …
$location = $this->Location();
$fields->addFieldsToTab("Root.Content.Location", $location->getCMSFields() );
}
}
Location DataObject:
class Location extends DataObject
{
function getCMSFields()
{
$fields = parent::getCMSFields();
$fields = $this->scaffoldFormFields(array(
'fieldClasses' => array(
'Lat' => 'HiddenField'
,'Lng' => 'HiddenField'
,'Zoom' => 'HiddenField'
,'FormatedAddress' => 'GoogleMapSelectableField'
…
)
));
return $fields;
}
When I mount it so I also receive among my fields, a dropdown box with all geoPages.
But I get no connection between the Page and the Location.
I hope you can help me
Jörn
I forgot: I use silverstripe 2.4 beta
Edit: add Image & beta info