Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

General Questions

General questions about getting started with SilverStripe that don't fit in any of the categories above.

Moderators: martimiz, Sean, biapar, Willr, Ingo, swaiba, simon_w

ImageField in ComplexTableField


Reply

3 Posts   823 Views

Avatar
Paco728

18 July 2011 at 4:28pm (Last edited: 18 July 2011 4:37pm), Community Member, 28 Posts

please help, I get this message to want to attach a picture from the popup in a complextablefield "Images can be attached once you have saved the record for the first time." and I see no error in the code

NuevoTorneo.php

$newsTablefield = new ComplexTableField(
$this,
'MiNoticia',
'Noticias',
array(
'titulo_not' => 'Titulo',
'Cont_not' => 'Contenido',
'img_not' => 'Imagen',
),
'getCMSFields_forPopup'
);
$newsTablefield->setAddTitle( 'noticia' );

$fields->addFieldToTab( 'Root.Content.Noticias', $newsTablefield );

..................................................................................................................................................................................................................

Noticias.php (dataobject)

static $db = array(
'titulo_not' => 'Text',
'Cont_not' => 'Text'
);

static $has_one = array(
'MiTorneo' => 'NuevoTorneo',
'img_not' => 'Image'
);

function getCMSFields_forPopup() {
$fields = new FieldSet();
    $fields->push( new TextField( 'titulo_not','Titulo' ) );
$fields->push( new TextareaField( 'Cont_not','Contenido' ) );
$fields->push( new ImageField( 'img_not','Imagen' ) );
return $fields;
}

Attached Files
Avatar
zenmonkey

19 July 2011 at 2:08am Community Member, 528 Posts

Its not an Error, you just need to save the DataObject then add the Images. Pretty sure its because the DataObject needs an ID before you can create the relation with the image and the ID isn't assigned until write() function. It happens whenever you next relations in DataObjects, though it would be nice if other DataObjets functioned more like the Page where it can cache those relations before the Save then write all of them at once.

Avatar
Paco728

20 July 2011 at 11:48am Community Member, 28 Posts

I figured that was why the message also appeared to solve it using imagedateobjectmanager ;). Thanks anyway