Re: Select box broken after upgrade
ok thanks guys I got correct it! Ganganath Hettiarachchi -- Our newest site for the community: CakePHP Video Tutorials http://tv.cakephp.org Check out the new CakePHP Questions site http://ask.cakephp.org and help others with their CakePHP related questions. To unsubscribe from this group, send email to cake-php+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/cake-php
Re: Select box broken after upgrade
hi Jeremy I created relationship as u said and now select list displayed user's id list. I joined two tables called Album and User "Album" has one "User" and "User" has many "Albums" Album table has a field called "user_id" and it is foreign key of user table, here are my codes ::User Model::: var $hasMany = array('Album'); ::Album Model: var $hasOne = array('User'=> array( 'className' => 'User', 'foreignKey' => 'user_id', 'dependent'=> false )); :::Album controller:: $users = $this->Album->User->find('list'); $this->set(compact('users')); :::view::: echo $form->input('user_id', array('label' => 'Select User')); when I run the code, it gives sql error like this, SELECT `Album`.`id`, `Album`.`album_name`, `Album`.`sub_directory`, `Album`.`create_date`, `Album`.`last_modified_date`, `Album`.`music_id`, `Album`.`album_category`, `Album`.`album_description`, `Album`.`user_id`, `Album`.`size`, `User`.`id`, `User`.`user_name`, `User`.`user_password`, `User`.`user_email`, `User`.`user_role`, `User`.`status`, `User`.`temp_password` FROM `albums` AS `Album` LEFT JOIN `users` AS `User` ON (`User`.`user_id` = `Album`.`id`) WHERE 1 = 1 error occurred due to above highlighted sql part , It should be like this (`Album`.`user_id` = `User`.`id`) so where should i change the code to fix the error??? I kindly ask for quick response! Ganganath Hettiarachchi -- Our newest site for the community: CakePHP Video Tutorials http://tv.cakephp.org Check out the new CakePHP Questions site http://ask.cakephp.org and help others with their CakePHP related questions. To unsubscribe from this group, send email to cake-php+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/cake-php
Re: Select box broken after upgrade
Thank you Jeremy. Removing the dollar sign fixed it. A stupid error on my end. I never even noticed that it was there! -- Our newest site for the community: CakePHP Video Tutorials http://tv.cakephp.org Check out the new CakePHP Questions site http://ask.cakephp.org and help others with their CakePHP related questions. To unsubscribe from this group, send email to cake-php+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/cake-php
Re: Select box broken after upgrade
I don't think that's correct. The compact function looks for local variables and compacts them into variables that are sent to the view. So $this->set(compact('musicList')); is sufficient so long as $musicList exists when called. The idea of using compact is that you can send lots of variables through in a single statement: $this->set(compact('one', 'two', 'three')); would produce view variables $one, $two and $three (assuming they existed in the controller function). You can use: $this->set('musicList', $musicList); instead (i.e. with compact()) to send a single variable through. You'd need to repeat it for each variable though. On 20 Jun 2011, at 07:12, andy_the ultimate baker wrote: > u should check the relation of album and music > > and while $this->set(compact('musicsList')); > use this > $this->set(compact('musicsList', $musicsList)); > > and u will collect them in ur view > > Regards > > Anand > > On Jun 20, 11:07 am, madusanka hettiarachchi > wrote: >> hi guys, >> >> Hi CRUSH, Did you get solve your problem? I have same as you! I did the >> changes which Jeremy said, bt It gives error like this, >> >> Undefined property: Album::$Music >> [*APP\controllers\albums_controller.php*, line *69*] >> Code >> >> function index(){//$lists = >> $this->Album->Music->find('list',array('fields'=>array('id','name'))); >>$musicsList = $this->Album->Music->find('list'); >> >> AlbumsController::index() - APP\controllers\albums_controller.php, line 69 >> Dispatcher::_invoke() - CORE\cake\dispatcher.php, line 204 >> Dispatcher::dispatch() - CORE\cake\dispatcher.php, line 171 >> [main] - APP\webroot\index.php, line 83 >> >> *Fatal error*: Call to a member function find() on a non-object in * >> D:\xampp\htdocs\...\app\controllers\albums_controller.php* on line *69 >> * >> here are my codes >> >> view::: >> echo $form->input('music_track_id', array('label' => 'Music Track')); >> >> controller::: >> >> $musicsList = $this->Album->Music->find('list'); //(line 69) >>$this->set(compact('musicsList')); >> >> can any body help me? >> >> Ganganath Hettiarachchi > > -- > Our newest site for the community: CakePHP Video Tutorials > http://tv.cakephp.org > Check out the new CakePHP Questions site http://ask.cakephp.org and help > others with their CakePHP related questions. > > > To unsubscribe from this group, send email to > cake-php+unsubscr...@googlegroups.com For more options, visit this group at > http://groups.google.com/group/cake-php -- Our newest site for the community: CakePHP Video Tutorials http://tv.cakephp.org Check out the new CakePHP Questions site http://ask.cakephp.org and help others with their CakePHP related questions. To unsubscribe from this group, send email to cake-php+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/cake-php
Re: Select box broken after upgrade
u should check the relation of album and music and while $this->set(compact('musicsList')); use this $this->set(compact('musicsList', $musicsList)); and u will collect them in ur view Regards Anand On Jun 20, 11:07 am, madusanka hettiarachchi wrote: > hi guys, > > Hi CRUSH, Did you get solve your problem? I have same as you! I did the > changes which Jeremy said, bt It gives error like this, > > Undefined property: Album::$Music > [*APP\controllers\albums_controller.php*, line *69*] > Code > > function index(){ //$lists = > $this->Album->Music->find('list',array('fields'=>array('id','name'))); > $musicsList = $this->Album->Music->find('list'); > > AlbumsController::index() - APP\controllers\albums_controller.php, line 69 > Dispatcher::_invoke() - CORE\cake\dispatcher.php, line 204 > Dispatcher::dispatch() - CORE\cake\dispatcher.php, line 171 > [main] - APP\webroot\index.php, line 83 > > *Fatal error*: Call to a member function find() on a non-object in * > D:\xampp\htdocs\...\app\controllers\albums_controller.php* on line *69 > * > here are my codes > > view::: > echo $form->input('music_track_id', array('label' => 'Music Track')); > > controller::: > > $musicsList = $this->Album->Music->find('list'); //(line 69) > $this->set(compact('musicsList')); > > can any body help me? > > Ganganath Hettiarachchi -- Our newest site for the community: CakePHP Video Tutorials http://tv.cakephp.org Check out the new CakePHP Questions site http://ask.cakephp.org and help others with their CakePHP related questions. To unsubscribe from this group, send email to cake-php+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/cake-php
Re: Select box broken after upgrade
Make sure your model associations are set up correctly. Your example will only work if there is a association between Album and Music ($hasOne, $hasMany, $belongsTo or $hasAndBelongsToMany). If the models aren't directly related or there are models in between, you can daisy chain the models until you get where you want to be. Here's a made up example: $musics = $this->Album->Artist->Singer->Music->find('list'); On 20 Jun 2011, at 12:29, madusanka hettiarachchi wrote: > Hi CRUSH, or other guys, > > I want to know can I call a model from another model, like this! > > $musics = $this->Album->Music->find('list'); > > It cause to error! > > when execute a without giving Music model, it gives list of album ids. > $musics = $this->Album->Music->find('list'); > > what are the other thing i should do to call one model from another?? > > Ganganath Hettiarachchi > > > -- > Our newest site for the community: CakePHP Video Tutorials > http://tv.cakephp.org > Check out the new CakePHP Questions site http://ask.cakephp.org and help > others with their CakePHP related questions. > > > To unsubscribe from this group, send email to > cake-php+unsubscr...@googlegroups.com For more options, visit this group at > http://groups.google.com/group/cake-php -- Our newest site for the community: CakePHP Video Tutorials http://tv.cakephp.org Check out the new CakePHP Questions site http://ask.cakephp.org and help others with their CakePHP related questions. To unsubscribe from this group, send email to cake-php+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/cake-php
Re: Select box broken after upgrade
Hi CRUSH, or other guys, I want to know can I call a model from another model, like this! $musics = $this->Album->Music->find('list'); It cause to error! when execute a without giving Music model, it gives list of album ids. $musics = $this->Album->Music->find('list'); what are the other thing i should do to call one model from another?? Ganganath Hettiarachchi -- Our newest site for the community: CakePHP Video Tutorials http://tv.cakephp.org Check out the new CakePHP Questions site http://ask.cakephp.org and help others with their CakePHP related questions. To unsubscribe from this group, send email to cake-php+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/cake-php
Re: Select box broken after upgrade
You have added a $ before the variable name in the compact statement. Remove it and replace it with exactly what I sent you. On 20 Jun 2011, at 07:27, CRUSH wrote: > Jeremy, > Not working. I changed it to: > > Controller > $mediaTypes = $this->Media->MediaType->find('list'); > $this->set(compact('$mediaTypes')); > > View > echo $this->Form->input('media_type_id'); > > and made the model change. Here is what it is outputting: > > Media Type > > > > > -- > Our newest site for the community: CakePHP Video Tutorials > http://tv.cakephp.org > Check out the new CakePHP Questions site http://ask.cakephp.org and help > others with their CakePHP related questions. > > > To unsubscribe from this group, send email to > cake-php+unsubscr...@googlegroups.com For more options, visit this group at > http://groups.google.com/group/cake-php -- Our newest site for the community: CakePHP Video Tutorials http://tv.cakephp.org Check out the new CakePHP Questions site http://ask.cakephp.org and help others with their CakePHP related questions. To unsubscribe from this group, send email to cake-php+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/cake-php
Re: Select box broken after upgrade
view::: echo $form->input('music_id', array('label' => 'Music Track')); controller::: $musics = $this->Album->Music->find('list'); $this->set(compact('musics')); -- Our newest site for the community: CakePHP Video Tutorials http://tv.cakephp.org Check out the new CakePHP Questions site http://ask.cakephp.org and help others with their CakePHP related questions. To unsubscribe from this group, send email to cake-php+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/cake-php
Re: Select box broken after upgrade
hi CRUSH, i ddnt get you clearly! can u explain it! u mean my controller class and view class should be changed as u said??? Ganganath Hettiarachchi -- Our newest site for the community: CakePHP Video Tutorials http://tv.cakephp.org Check out the new CakePHP Questions site http://ask.cakephp.org and help others with their CakePHP related questions. To unsubscribe from this group, send email to cake-php+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/cake-php
Re: Select box broken after upgrade
Jeremy, Not working. I changed it to: Controller $mediaTypes = $this->Media->MediaType->find('list'); $this->set(compact('$mediaTypes')); View echo $this->Form->input('media_type_id'); and made the model change. Here is what it is outputting: Media Type -- Our newest site for the community: CakePHP Video Tutorials http://tv.cakephp.org Check out the new CakePHP Questions site http://ask.cakephp.org and help others with their CakePHP related questions. To unsubscribe from this group, send email to cake-php+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/cake-php
Re: Select box broken after upgrade
Ganganath, I think your controller should be musics and your view should be music_id -- Our newest site for the community: CakePHP Video Tutorials http://tv.cakephp.org Check out the new CakePHP Questions site http://ask.cakephp.org and help others with their CakePHP related questions. To unsubscribe from this group, send email to cake-php+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/cake-php
Re: Select box broken after upgrade
hi guys, Hi CRUSH, Did you get solve your problem? I have same as you! I did the changes which Jeremy said, bt It gives error like this, Undefined property: Album::$Music [*APP\controllers\albums_controller.php*, line *69*] Code function index(){//$lists = $this->Album->Music->find('list',array('fields'=>array('id','name'))); $musicsList = $this->Album->Music->find('list'); AlbumsController::index() - APP\controllers\albums_controller.php, line 69 Dispatcher::_invoke() - CORE\cake\dispatcher.php, line 204 Dispatcher::dispatch() - CORE\cake\dispatcher.php, line 171 [main] - APP\webroot\index.php, line 83 *Fatal error*: Call to a member function find() on a non-object in * D:\xampp\htdocs\...\app\controllers\albums_controller.php* on line *69 * here are my codes view::: echo $form->input('music_track_id', array('label' => 'Music Track')); controller::: $musicsList = $this->Album->Music->find('list'); //(line 69) $this->set(compact('musicsList')); can any body help me? Ganganath Hettiarachchi -- Our newest site for the community: CakePHP Video Tutorials http://tv.cakephp.org Check out the new CakePHP Questions site http://ask.cakephp.org and help others with their CakePHP related questions. To unsubscribe from this group, send email to cake-php+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/cake-php
Re: Select box broken after upgrade
The variable should be called $mediaTypes, so do $this->set(compact('mediaTypes')); instead. Also, consider going to the MediaType model and setting var $displayField = 'type'; - then you don't need to specify the fields in the find; a simple $mediaTypes = $this->Media->MediaType->find('list'); will do. On 20 Jun 2011, at 06:16, CRUSH wrote: > Hey, > I have spent hours troubleshooting this stupid problem. Tried many > combinations of names. This code gave me a select box with the media > types in the view in version 1.2. In version 1.3 it gives me an empty > select box. By debugging the "$media_types" I can see that the Find > call is getting the correct rows but that's as far as I know how to > debug. Any thoughts? > > Controller > $media_types = $this->Media->MediaType->find('list', > array('fields'=>array('MediaType.id', 'MediaType.type'))); > $this->set(compact('media_types')); > > View > echo $form->input('media_type_id', array('label' => 'Media Type')); > > -- > Our newest site for the community: CakePHP Video Tutorials > http://tv.cakephp.org > Check out the new CakePHP Questions site http://ask.cakephp.org and help > others with their CakePHP related questions. > > > To unsubscribe from this group, send email to > cake-php+unsubscr...@googlegroups.com For more options, visit this group at > http://groups.google.com/group/cake-php -- Our newest site for the community: CakePHP Video Tutorials http://tv.cakephp.org Check out the new CakePHP Questions site http://ask.cakephp.org and help others with their CakePHP related questions. To unsubscribe from this group, send email to cake-php+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/cake-php
Select box broken after upgrade
Hey, I have spent hours troubleshooting this stupid problem. Tried many combinations of names. This code gave me a select box with the media types in the view in version 1.2. In version 1.3 it gives me an empty select box. By debugging the "$media_types" I can see that the Find call is getting the correct rows but that's as far as I know how to debug. Any thoughts? Controller $media_types = $this->Media->MediaType->find('list', array('fields'=>array('MediaType.id', 'MediaType.type'))); $this->set(compact('media_types')); View echo $form->input('media_type_id', array('label' => 'Media Type')); -- Our newest site for the community: CakePHP Video Tutorials http://tv.cakephp.org Check out the new CakePHP Questions site http://ask.cakephp.org and help others with their CakePHP related questions. To unsubscribe from this group, send email to cake-php+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/cake-php