populate object_select_tag with your own objects in symfony


/ Published in: PHP
Save to your folder(s)

Sometimes you need to have an ability to show limited number of elements in your select objects or sort elements by name or so. I figured out that this feature was added to object_select_tag later so that not everybody knows about that. This feature’s name is ‘peer_method’ - effectively you create your peer method which returns objects which must appear in your object_select_tag. So here is the code for object_select_tag:


Copy this code and paste it in your HTML
  1. echo object_select_tag($domain, ‘getObjectId’, array (
  2. ‘related_class’ => ‘Object’,
  3. ‘peer_method’ => ‘getSortedObject’,
  4. ‘control_name’ => ‘object_id’,
  5. ‘include_blank’ => true,
  6. ));
  7.  
  8. in your ObjectPeer.php:
  9.  
  10. static public function getSortedObject() {
  11. $c = new Criteria();
  12. $c->addAscendingOrderByColumn(TablePeer::NAME);
  13. $rs = TablePeer::doSelect($c);
  14. return $rs;
  15. }
  16.  
  17. and in your yml generator:
  18. fields:
  19. departement_id: { params: text_method =getNomCode peer_method =doSelectOrderByCode }

URL: http://www.symfonylab.com/how-to-populate-object_select_tag-with-your-own-objects/

Report this snippet


Comments

RSS Icon Subscribe to comments

You need to login to post a comment.