Re: Getting recursive user data via Auth
Yep, that's awesome! thanks! On Jan 23, 11:39 am, Azril Nazli wrote: > Wicked cool :D > > cricket wrote: > > On Sat, Jan 22, 2011 at 3:53 PM, Yaron wrote: > > > Hi, > > > Suppose I a users table, a groups table, and every user belongs to a > > > group. I'd like via the app_controller to get the group's name, in > > > order to set it in the view. > > > I've used the following code in app_controller.php: > > > function beforeRender(){ > > > $this->loadModel('Group'); > > > $group = $this->Group->find('id = ' . > > > $this->Auth->user('group_id')); > > > $this->set('groupName', $group['Group']['name']); > > > } > > > > This code works great, but is there another way than using the > > > loadModel method? thanks. > > > You can grab the name from within login() and store it in the session. > > Assuming you have $this->Auth->autoRedirect = false in > > AppController::beforeFilter() ... > > > public function login() > > { > > if ($user = $this->Auth->user()) > > { > > $this->User->Group->id = $this->Auth->user('group_id'); > > > $this->Session->write( > > 'Auth.User.group_name', > > $this->User->Group->field('name') > > ); > > > $this->redirect($this->Auth->redirect()); > > } > > } > > > Then you can get the name from within a controller: > > $this->Auth->user('group_name'); > > > ... or view: > > $this->Session->read('Auth.User.group_name'); -- 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: Getting recursive user data via Auth
Wicked cool :D cricket wrote: > On Sat, Jan 22, 2011 at 3:53 PM, Yaron wrote: > > Hi, > > Suppose I a users table, a groups table, and every user belongs to a > > group. I'd like via the app_controller to get the group's name, in > > order to set it in the view. > > I've used the following code in app_controller.php: > > function beforeRender(){ > > $this->loadModel('Group'); > > $group = $this->Group->find('id = ' . $this->Auth->user('group_id')); > > $this->set('groupName', $group['Group']['name']); > > } > > > > This code works great, but is there another way than using the > > loadModel method? thanks. > > You can grab the name from within login() and store it in the session. > Assuming you have $this->Auth->autoRedirect = false in > AppController::beforeFilter() ... > > public function login() > { > if ($user = $this->Auth->user()) > { > $this->User->Group->id = $this->Auth->user('group_id'); > > $this->Session->write( > 'Auth.User.group_name', > $this->User->Group->field('name') > ); > > $this->redirect($this->Auth->redirect()); > } > } > > Then you can get the name from within a controller: > $this->Auth->user('group_name'); > > ... or view: > $this->Session->read('Auth.User.group_name'); -- 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: Getting recursive user data via Auth
On Sat, Jan 22, 2011 at 3:53 PM, Yaron wrote: > Hi, > Suppose I a users table, a groups table, and every user belongs to a > group. I'd like via the app_controller to get the group's name, in > order to set it in the view. > I've used the following code in app_controller.php: > function beforeRender(){ > $this->loadModel('Group'); > $group = $this->Group->find('id = ' . $this->Auth->user('group_id')); > $this->set('groupName', $group['Group']['name']); > } > > This code works great, but is there another way than using the > loadModel method? thanks. You can grab the name from within login() and store it in the session. Assuming you have $this->Auth->autoRedirect = false in AppController::beforeFilter() ... public function login() { if ($user = $this->Auth->user()) { $this->User->Group->id = $this->Auth->user('group_id'); $this->Session->write( 'Auth.User.group_name', $this->User->Group->field('name') ); $this->redirect($this->Auth->redirect()); } } Then you can get the name from within a controller: $this->Auth->user('group_name'); ... or view: $this->Session->read('Auth.User.group_name'); -- 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
Getting recursive user data via Auth
Hi, Suppose I a users table, a groups table, and every user belongs to a group. I'd like via the app_controller to get the group's name, in order to set it in the view. I've used the following code in app_controller.php: function beforeRender(){ $this->loadModel('Group'); $group = $this->Group->find('id = ' . $this->Auth->user('group_id')); $this->set('groupName', $group['Group']['name']); } This code works great, but is there another way than using the loadModel method? thanks. -- 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