What version of CakePHP are you running? Have you tried the following

pr($this->request->data['Subject']['subject']);
pr($this->request->data['Position']['position']);
pr($this->request->data['Dpmember']['departement']);


On 12 April 2014 09:18, David Melbourn Wampamba <[email protected]>wrote:

>
>
> I have several tables and corresponding models, that is to say, *Staffs,
> Dpmembers*, *Subjects* and *Positions* tables. In my *Staff* model I
> create *hasOne* on *Department* because I want to retrieve data from
> Department table which is working.
>
> But I have also created more associations of *hasMany* on *Dpmember*,
> *Subject* and *Position* models because I want to save the corresponding
> staff records.
>
> The view *newstaff.ctp* looks like this
>
> <div class="staff form">
> <?php echo $this->Form->create('Staff');?><h3><?php echo __('Add a new staff 
> member'); ?></h3><?php
>
> echo $this->Form->input('name');
> echo $this->Form->input('marital',array('label'=>'Marital 
> status','options'=>array('empty'=>'Choose 
> status','Single'=>'Single','Divorced'=>'Divorced','Married'=>'Married')));
> echo $this->Form->input('Children');
> echo $this->Form->input('nationality');
> echo $this->Form->input('location');
> echo $this->Form->input('email');
> echo $this->Form->input('phone',array('label'=>'Phone number'));
> echo $this->Form->input('nextofkeen',array('label'=>'Next of keen'));
> echo $this->Form->input('keenrelation',array('label'=>'Next of keen 
> relationship','options'=>array('Choose option'=>'Choose 
> option','Husband'=>'Husband','Wife'=>'Wife','Guardian'=>'Gaurdian','Child'=>'Child')));
> echo $this->Form->input('school');
> echo $this->Form->input('award');
> echo $this->Form->input('schoolperiod');
> echo $this->Form->input('workplace',array('label'=>'Workplace'));
> echo $this->Form->input('workposition');
> echo $this->Form->input('workperiod');
> echo 
> $this->Form->input('dpmember.department.',array('options'=>$department,'empty'=>'Choose
>  Department','label'=>'Department'));
> echo $this->Form->input('subject.subjcet',array('options'=>array('Choose 
> option'=>'Choose option','Science'=>'Science','Social Studies'=>'Social 
> studies','English'=>'English','Mathematics'=>'Mathematics'),'label'=>'Subject'));
> echo $this->Form->input('position.role',array('options'=>array('Choose 
> option'=>'Choose option','Class teacher'=>'Class 
> teacher','Bursar'=>'Bursar','Cook'=>'Cook'),'label'=>'Position'));
> echo $this->Form->submit('Save staff', array('class' => 'btn btn-success',  
> 'title' => 'Click here to add the user') ); ?><?php echo $this->Form->end(); 
> ?></div>
>
> My Staff Model *Staff.php* like this
>
> <?php
>     class Staff extends AppModel{
>         public $hasOne = array(
>             'Department'=>array(
>                 'className'=>'Department'
>                 ));
>         public $hasMany = array(
>             'Dpmember'=>array(
>                 'className'=>'Dpmember',
>                 'foreign_key'=>'Dpmember.staff_id'
>                 ),
>             'Subject'=>array(
>                 'className'=>'Subject',
>                 'foreign_key'=>'Subject.staff_id'
>                 ),
>             'Position'=>array(
>                 'className'=>'Position',
>                 'foreign_key'=>'Position.staff_id'
>                 )
>             );
>     }?>
>
> In my *StaffsController.php* I have a function newstaff() with the code
> below
>
> public function newstaff() {
>     /*Create a select form field for departments */
>     $department = 
> $this->Staff->Department->find('list',array('fields'=>array('Department.title','Department.title')));
>     $this->set('department', $department);
>     /*End creation of a select form field for departments */
>
>     if (!empty($this->request->data)) {
>         debug($this->request->data); // returns all data
>         debug($this->Staff->Subject->subject); // has returned null
>         debug($this->Staff->Position->position); // has returned null
>         debug($this->Staff->Dpmember->departement); // has returned null
>         }}
>
> ------------------------------
>
> I don't know why but for some reason, I have not been able to found out.
> Running debug($this->request->data) returns expected data.
>
> But accessing individual associated form fields returns null values not
> the expected data. Please help me.
>
> Thank you
>
> --
> Like Us on FaceBook https://www.facebook.com/CakePHP
> Find us on Twitter http://twitter.com/CakePHP
>
> ---
> You received this message because you are subscribed to the Google Groups
> "CakePHP" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/cake-php.
> For more options, visit https://groups.google.com/d/optout.
>



-- 
Kind Regards
 Stephen Speakman

-- 
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP

--- 
You received this message because you are subscribed to the Google Groups 
"CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/d/optout.

Reply via email to