Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Sonata Admin edit form many to many not working - symfony2.1.6

I am having a problem with implementing the many to many relationship in the sonata admin edit form, with the following structure.

purchase (id, total_price, discount, created_at)
purchase_product (purchase_id, product_id, quantity)
product (id, title, desc, price, thumbnail, created_at)

I have seen many threads and have tried the solutions listed in them. I have tried

->add('products', 'sonata_type_model', array('by_reference' => false))

I get the following error

No entity manager defined for class Doctrine\ORM\PersistentCollection 

Then when i couldn't find a way to solve this, I switched to

->add('products', 'sonata_type_collection', array(), array('edit' => 'inline', 'inline' => 'table')

I got the following error

INVALID MODE type : sonata_type_collection - mapping : 8 

I am also unable to figure out how to get and display the quantity from the purchase_product table.

Any pointers and help is highly appreciated.

like image 407
dagger Avatar asked Jan 11 '13 20:01

dagger


1 Answers

You can try to add 'expanded' => true and 'multiple' => true

->add('products', 'sonata_type_model', array('expanded' => true, 'by_reference' => false, 'multiple' => true))
like image 191
Daniel Korsak Avatar answered Oct 22 '22 23:10

Daniel Korsak