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:

DataObjectManager Module /

Discuss the DataObjectManager module, and the related ImageGallery module.

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

attn uncle cheese - dataObjectManager bug?


Go to End


32 Posts   5854 Views

Avatar
biapar

Forum Moderator, 435 Posts

9 July 2009 at 12:58am

With Firebug , I see:

http://localhost/ss/admin/EditForm/field/ImageAttachments/add 404 NOT found

with response

I can't handle sub-URLs of a CMSMain object.

and

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="it" lang="it">
<head>
<title>Oggetto non trovato!</title>
<link rev="made" href="mailto:admin@localhost" />
<style type="text/css"><!--/*--><![CDATA[/*><!--*/
body { color: #000000; background-color: #FFFFFF; }
a:link { color: #0000CC; }
p, address {margin-left: 3em;}
span {font-size: smaller;}
/*]]>*/--></style>
</head>

<body>
<h1>Oggetto non trovato!</h1>
<p>

L'URL richiesto non esiste su questo server.

Il link della
<a href="http://localhost/ss/admin/%3flocale=en_US">pagina da cui
sei arrivato</a> potrebbe essere errato o non essere pi&ugrave; valido.
Per favore, informa dell'errore l'autore della
<a href="http://localhost/ss/admin/%3flocale=en_US">pagina</a>.

</p>
<p>
Se pensi che questo sia un errore del server, per favore contatta il
<a href="mailto:admin@localhost">webmaster</a>.

</p>

<h2>Error 404</h2>
<address>
<a href="/">localhost</a><br />

<span>07/08/09 14:36:14<br />
Apache/2.2.11 (Win32) DAV/2 mod_ssl/2.2.11 OpenSSL/0.9.8i PHP/5.2.9</span>
</address>
</body>
</html>

Avatar
UncleCheese

Forum Moderator, 4102 Posts

9 July 2009 at 1:20am

Weird. I have seen this issue before, but it's when I'm testing adding new features. I didn't think it was in the stable release. Post your code?

Avatar
UncleCheese

Forum Moderator, 4102 Posts

9 July 2009 at 1:22am

In your code, you're using a CTF. Does this happen with both CTF and DOM?

Avatar
UncleCheese

Forum Moderator, 4102 Posts

9 July 2009 at 1:43am

Did that solve the problem?

Avatar
biapar

Forum Moderator, 435 Posts

9 July 2009 at 2:51am

If I put URL http://localhost/ss/admin/EditForm/field/ImageAttachments/add,

I receive from browser :

I can't handle sub-URLs of a CMSMain object.

ImageAttachments and Resize_Image class:

class ImageAttachment extends DataObject {
static $db = array(
'Name' => 'Text'
);
static $has_one = array(
'Image' => 'Resize_Image'
);

static $field_names = array('Name' => 'Name');

function getCMSFields_forPopup() {
$fields = new FieldSet();
$fields->push(new TextField('Name', 'Name'));
$fields->push(new ImageField('Image', 'Image'));

return $fields;
}

}

class Resize_Image extends Image {
static $db = null;

function generateThumbnail($gd) {
$gd->setQuality(80);
return $gd->paddedResize(140,100);
}

function generateContentImage($gd) {
$gd->setQuality(90);
return $gd->resizeByWidth(200);
}

function generateLargeImage($gd) {
$gd->setQuality(90);
return $gd->resizeByWidth(600);
}

}

and Product class

class Product extends Page {
	
	static $add_action = 'a Product Page';

	static $casting = array();

	static $default_parent = 'ProductGroup';

	static $icon = 'cms/images/treeicons/book';

	static $db = array(
		'Price' => 'Currency',
		'Weight' => 'Decimal(9,2)',
		'Manufacter' => 'Varchar',
		'Model' => 'Varchar',
		'FeaturedProduct' => 'Boolean',
		'AllowPurchase' => 'Boolean',
		"InternalItemID" => "Varchar(30)",
	);

	/**
	 * Image Support 
	 */
static $has_one = array(
      'ImageThumbnail' => 'Product_Image',
      'Image' => 'Image'
   ); 
	

   
 static $has_many = array(
      'ImageAttachments' => 'ImageAttachment'
   ); 

   
	
	static $defaults = array(
		'AllowPurchase' => false
	);

	protected $cart;

	/** 
	 * Allows this product to know which
	 * order it has been added to
	 */
	function setCart($cart) {
		$this->cart = $cart;
	}

	/**
	 * Create the fields for a product within the CMS
	 */
	function getCMSFields() {
		$fields = parent::getCMSFields();


	
		$my_imagetable = new ComplexTableField(
			$this,
			'ImageAttachments',
			'ImageAttachment',
			ImageAttachment::$field_names,
			ImageAttachment::getCMSFields_forPopup(), // form that pops up for edit
         "ProductID = {$this->ID}", // a filter to only display item associated with this page
         "Name ASC" // Sort by name
		);
	   $fields->addFieldToTab('Root.Content.Additional Images', $my_imagetable); 
	  
		return $fields;
	}
	

   function ImageAttachment() {
      if($obj = DataObject::get('ImageAttachment', "ProductID = $this->ID")) {
         return $obj;
      } else {
         return false;
      }
   }

I wrote here http://www.silverstripe.org/upgrading-silverstripe/show/256509?showPost=264360#post264360&flush=1 also.

Avatar
biapar

Forum Moderator, 435 Posts

9 July 2009 at 3:00am

Yes , I use ComplexTableField.

How Do you mean with DOM?

Avatar
UncleCheese

Forum Moderator, 4102 Posts

9 July 2009 at 3:16am

DataObjectManager (DOM). This forum is for DataObjectManager support, not ComplexTableField.

Avatar
UncleCheese

Forum Moderator, 4102 Posts

9 July 2009 at 3:18am

I'm able to run a ImageDOM beside a DOM without a problem. Can you try removing one of the DOMs, so it's just a single DOM and a single ImageDOM?