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.

Data Model Questions /

Dataobject as pages using 2 images


Reply


2 Posts   559 Views

Avatar
Mauro74

Community Member, 30 Posts

19 August 2012 at 9:49pm

I'm trying to develop a tutorial from [url]http://www.ssbits.com[/url] that uses Dataobject as pages. Here's the link to it: [url]http://www.ssbits.com/tutorials/2010/dataobjects-as-pages-part-1-keeping-it-simple[/url]

Now in the tutorial (which I've used already in my projects) there's only one image per staff member, I want to associate 2 images per staff member (I've used products instead of staff members), I guess I need to use $has_many relation but when I try it doesn't work properly, it uploads the images but it doesn't associate them with the staff member (product in my case). Here's how I did it:

//Relations
static $has_one = array (
'ProductPage' => 'ProductPage'
);

static $has_many = array (
'Photo1' => 'Image',
'Photo2' => 'Image'
);

Anyone know how to do this?

Thanks

Avatar
Bolixe

Community Member, 17 Posts

22 August 2012 at 3:19am

Hi there!!

It´s remain me something I have used with my dataObject to upload multiple files.

Create a extra class:

class ProductImages extends File
{
static $has_one = array (

'yourDataObject' => 'yourDataObject'

);
}

Then your relations in yourDataObject should be like:

//Relations
static $has_one = array (
'ProductPage' => 'ProductPage'
);

static $has_many = array (
'ProductImages ' => 'ProductImages'
);

In templates:

<% if ProductImages%>

<p>Images</p>

<% control ProductImages%>

<a href="$Filename">$Title</a>

<% end_control %>

<% end_if %>

Then to make it better, in the getCMSFields you can limit the number of uploads per object

Cheers