Inconsistent Setting Variables CakePHP -


so have following in controller:

$employee_options = array(     'conditions' => array('employee.id' => $this->employee_id),     'recursive' => 4, );  $employees = $this->employee->find('all', $employee_options); $this->set('employees', $employees);  $initial_dept_id = $this->employee->field('department_id', array('id' => $this->employee_id)); 

first had this

$index_chosen = $this->employee->field('index_chosen_section', array('id' => $this->employee_id)); $this->set('initial_dept_id', $initial_dept_id); $this->set('$index_chosen', $index_chosen); 

then changed $index_chosen this, when couldn't work:

$index_chosen = $employees[0]; $this->set('initial_dept_id', $initial_dept_id); $this->set('$index_chosen', $index_chosen); 

here view:

<pre>   <?php print_r($employees[0]) ?> </pre> <pre>   <?php print_r($index_chosen); ?> </pre> 

both approaches(in controller) resulted in $index_chosen show nothing. in second approach, printing same thing, first shows. ideas on why happening? thanks

don't use $ in first half of ->set():

$this->set('$index_chosen', $index_chosen); // <-- no  $this->set('index_chosen', $index_chosen); // <-- yes 

in past, believe cake auto camelcase variables, depending version you're using, after making above change remove $, if $index_chosen variable still not showing in view, try $indexchosen instead (which recommended case variables anyway).

$indexchosen = $employees[0]; $this->set('indexchosen', $indexchosen); // <-- better 

side note:

when setting multiple variables, instead of putting each on it's own line, it's common practice use php's compact():

$this->set(compact('initial_dept_id', 'index_chosen')); 

Comments

Popular posts from this blog

angular - Is it possible to get native element for formControl? -

unity3d - Rotate an object to face an opposite direction -

javascript - Why jQuery Select box change event is now working? -