Yes, you are right. It is so impt to ensure that all Models are linked properly. Otherwise nothing will work.
Thanks again On Jul 7, 9:10 am, "Chaitanya Maili StrApp.net" <[email protected]> wrote: > Hi, > > So Parent hasMany Child and Child belongsTo Parent > that is what you need to write in the model relation. > > So suppose there is a model called Parent and Child, > then you should write the following code in the Parent model > $hasMany = array('Child'); > > and in the Child model > $belongsTo = array('Parent'); > > > > On Wed, Jul 6, 2011 at 12:26 PM, varai <[email protected]> wrote: > > hi, > > > What i mean here is one parent can have many children in the same > > school. One child belongs to one parent. > > > So, how can i show that relationship? > > > thank you. > > > On Jul 6, 8:10 am, "Chaitanya Maili StrApp.net" > > <[email protected]> wrote: > > > Hi , > > > > You are providing wrong relations > > > > relationships: > > > Student hasOne MerryParent (Correct) > > > MerryParent hasMany Student (Wrong) > > > it should be > > > MerryParent belongsTo Student > > > > because In your case Student is the parent table and MerryParent is the > > > child table. > > > > Regards, > > > Chaitanya. > > > > On Tue, Jul 5, 2011 at 10:28 AM, varai <[email protected]> wrote: > > > > Hi, > > > > > I'm having 2 related models in 1 form (add.ctp) but validation is > > > > working only for 1 model. ie. validation is working fine for Student > > > > model but not MerryParent model. > > > > > Can anyone tell me on what i'm doing wrong? thank you. > > > > > relationships: > > > > Student hasOne MerryParent > > > > MerryParent hasMany Student > > > > > student.php > > > > <?php > > > > class Student extends AppModel{ > > > > var $name='Student'; > > > > var $hasOne=array( > > > > 'MerryParent' => array( > > > > 'className' => 'MerryParent', > > > > 'foreignKey'=>'student_id', > > > > 'dependent' => true) > > > > ); > > > > var $belongsTo='MerryClass'; > > > > > var $validate=array( > > > > > 'name'=>array('rule'=>array('minLength',1),'message'=>'Name is > > > > required!'), > > > > 'dob'=>array('rule'=>'notEmpty','message'=>'Date > > of > > > > Birth is > > > > required!'), > > > > 'class_id'=>array('rule'=>'notEmpty', > > > > 'message'=>'Which class are > > > > you enquiring about?') > > > > ); > > > > > } > > > > ?> > > > > > students_controller.php > > > > <?php > > > > class StudentsController extends AppController{ > > > > > function add(){ > > > > if (!empty($this->data)){ > > > > var_dump($this->data); > > > > die(debug($this->Student->validationErrors)); > > > > if ($this->Student->saveAll($this->data)) > > > > { > > > > $this->Session->setFlash('Your child\'s > > > > admission has been > > > > received. We will send you an email shortly.'); > > > > > $this->redirect(array('controller'=>'pages', 'action'=>'home')); > > > > > } > > > > > /* else > > > > { > > > > //die(debug($this->Student->validationErrors)); > > > > > $this->Session->setFlash('Your child\'s > > admission > > > > failed to > > > > save.'); > > > > > //$this->redirect(array('controller'=>'pages', > > > > 'action'=>'home')); > > > > > }*/ > > > > } //for if (!empty.... > > > > }//end function > > > > } > > > > ?> > > > > > merryparent.php > > > > <?php > > > > class MerryParent extends AppModel{ > > > > var $name='MerryParent'; > > > > var $hasMany=array( > > > > 'Student'=>array( > > > > 'className'=>'Student', > > > > 'foreignKey'=>'parent_id' > > > > ) > > > > ); > > > > var $belongsTo='State'; > > > > var > > > > $validate=array('initial'=>array('rule'=>'notEmpty','message'=>'Please > > > > select your initial'), > > > > > 'name'=>array('rule'=>array('minLength',1),'message'=>'Name is > > > > required!'), > > > > > 'email'=>array('rule'=>'email','message'=>'Valid email address > > > > required!','required'=>true, 'allowEmpty'=>false), > > > > > 'landline'=>array('rule'=>array('custom','/(0[0-9]{2,4}-[2-9][0-9] > > > > {5,7})/'), 'required'=>false, 'allowEmpty'=>true, 'message'=>'Invalid > > > > phone number! phone number format: eg 020-22345678 OR 0544-7573758 OR > > > > 02345-874567 '), > > > > > 'mobile'=>array('rule'=>array('custom','/([89]{1}[0-9]{9})/'), > > > > 'required'=>true, 'allowEmpty'=>false, 'message'=>'Invalid mobile > > > > number! mobile number format: eg 9876543211'), > > > > > 'address'=>array('rule'=>array('alphaNumeric',array('minLength', > > > > 1),'required'=>true, 'allowEmpty'=>false, 'message'=>'Please enter > > > > your address.'), > > > > > 'city'=>array('rule'=>'notEmpty','message'=>'Please select your > > > > city','required'=>true, 'allowEmpty'=>false), > > > > > 'state'=>array('rule'=>'notEmpty','message'=>'Please select your > > > > state','required'=>true, 'allowEmpty'=>false), > > > > > 'postal_code'=>array('rule'=>array('numeric',6),'message'=>'valid > > > > postal code required!','required'=>true, 'allowEmpty'=>false) > > > > ?> > > > > > merryparents_controller.php > > > > <?php > > > > class MerryParentsController extends AppController{ > > > > > var $name='MerryParents'; > > > > > function index(){ > > > > var_dump($this->data); > > > > die(debug($this->MerryParent->ValidationErrors)); > > > > } > > > > > } > > > > ?> > > > > > add.ctp > > > > <?php > > > > echo $form->create('Student', array('action'=>'add')); > > > > echo '<fieldset>'; > > > > echo '<legend>Student Information</legend>'; > > > > echo $form->input('Student.name'); > > > > > $options = array('Male'=>'Male','Female'=>'Female'); > > > > $attributes = array('value'=>'Male'); > > > > echo $form->radio('Student.gender',$options,$attributes); > > > > > echo $form->input('Student.dob', array('label'=>'Date of Birth', > > > > 'dateFormat'=>'DMY', > > > > 'empty'=>true, > > > > 'timeFormat' => '', > > > > 'minYear' => ( > > > > date('Y') - 5 > > > > ), > > > > 'maxYear' => ( > > > > date('Y') - 2 > > > > ) > > > > )); > > > > echo $form->input('Student.class_id', > > > > array( > > > > 'label'=>'Enquiry Class for', > > > > 'empty'=>true, > > > > > 'options'=>array('1'=>'Playgroup','2'=>'Nursery','3'=>'LKG', > > > > '4'=>'UKG') > > > > ) > > > > ); > > > > echo '</fieldset>'; > > > > > echo '<fieldset>'; > > > > echo '<legend>Parent Information</legend>'; > > > > /* echo $form->input('MerryParent.id', array('type'=>'hidden')); > > > > */ echo $form->input('MerryParent.initial', > > > > array('empty'=>true, > > > > 'options'=>array('Dr'=>'Dr', > > > > 'Mr'=>'Mr', > > > > 'Mrs'=>'Mrs', > > > > 'Ms'=>'Ms') > > > > ) > > > > ); > > > > echo $form->input('MerryParent.name', > > > > array('label'=>'Parent/Guardian > > > > Name')); > > > > echo $form->input('MerryParent.email'); > > > > echo $form->input('MerryParent.landline'); > > > > echo $form->input('MerryParent.mobile'); > > > > echo $form->input('MerryParent.address'); > > > > echo $form->input('MerryParent.city'); > > > > echo $form->input('MerryParent.state', array('empty'=>true)); > > > > echo $form->input('MerryParent.postal_code'); > > > > echo '</fieldset>'; > > > > //pr ($this->validationErrors); > > > > echo $form->end('Submit'); > > > > ?> > > > > > -- > > > > Our newest site for the community: CakePHP Video Tutorials > > > >http://tv.cakephp.org > > > > Check out the new CakePHP Questions sitehttp://ask.cakephp.organdhelp > > > > others with their CakePHP related questions. > > > > > To unsubscribe from this group, send email to > > > > [email protected] For more options, visit this > > group > > > > athttp://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 sitehttp://ask.cakephp.organd help > > others with their CakePHP related questions. > > > To unsubscribe from this group, send email to > > [email protected] For more options, visit this group > > athttp://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 [email protected] For more options, visit this group at http://groups.google.com/group/cake-php
