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.

We're retiring the forums!

The SilverStripe forums have passed their heyday. They'll stick around, but will be read only. We'd encourage you to get involved in the community via the following channels instead:

Archive /

Our old forums are still available as a read-only archive.

Moderators: martimiz, Sean, Ed, biapar, Willr, Ingo

Forms, objects and how to write to many_many relations


Go to End


2 Posts   2493 Views

Avatar
dio5

Community Member, 501 Posts

30 September 2007 at 3:48am

Along with my problem
http://www.silverstripe.com/silverstripe-development/flat/5780

I'm having another probably stupid issue.

How do I write to a table that is in a many_many relationship with the main object I'm writing to?
So suppose I have in my form-processing function:

$tip = new Tip();
$tip->props = $data['props']
...

In one of my forms I have a checkboxset with the name of Categories[].
My class Tip can have multiple categories, so in Tip I have:

static $many_many = array(
		'Categories' => 'Category',
	);

Now in the formprocessing function I can access the category-array

foreach($data['Categories'] as $cat)
{
	$tip->Category = $cat;// this is probably wrong!!!!!
}

But how do I set this? This should write to tip_categories table, but obviously setting $tip->Category is not the way to do it...

?

Avatar
dio5

Community Member, 501 Posts

30 September 2007 at 3:20am

Edited: 30/09/2007 3:34am

Issue seems to be solved automatically when I use

form->saveInto();

However, none of the Longitude/latitude data from the Mapping module seems to be saved then...

what seems logical...