CDbCommand failed to execute the SQL statement: SQLSTATE[HY000]: General error: 1452 Cannot add or update a child row: a foreign key constraint fails (lcc-srs
.assessment_detail
, CONSTRAINT assessment_detail_ibfk_1
FOREIGN KEY (assessment_header_id
) REFERENCES assessment_header
(id
) ON DELETE NO ACTION ON UPDATE NO ACTION)
that is the error that occurred when i try to submit the form on assessment detail. i dont know what it means. pls help me decipher it.
here are the codes that i added for dynamic dropdown:
assessment detail controller
array('allow', // allow authenticated user to perform 'create' and 'update' actions
'actions'=>array('create','update','dynamicDesc','dynamicCode'),
'users'=>array('@'),
.....
public function actionDynamicCode()
{
$data=fee_code::model()->findAll('grade_level_id=:grade_level_id',
array(':grade_level_id'=>(int) $_POST['assessment_detail']['grade_level_id']));
$data=CHtml::listData($data,'id','fee_code');
foreach($data as $value=>$code1)
{
echo CHtml::tag('option',
array('value'=>$value),CHtml::encode($code1),true);
}
}
public function actionDynamicDesc()
{
$data=fee_description::model()->findAll('fee_code_id=:fee_code_id',
array(':fee_code_id'=>(int) $_POST['assessment_detail']['fee_code_id']));
$data=CHtml::listData($data,'id','fee_desc_code');
foreach($data as $value=>$desc1)
{
echo CHtml::tag('option',
array('value'=>$value),CHtml::encode($desc1),true);
}
}
),
assessment detail _form
<div class="row">
<?php echo $form->labelEx($model,'grade_level_id'); ?>
<?php echo $form->dropDownList($model,'grade_level_id', CHtml::listData(
grade_level::model()->findAll(), 'id', 'grade_code'),
array(
'prompt' => 'Select a grade code',
'ajax' => array(
'type' =>'POST',
'url' => CController::createUrl('assessment_detail/dynamicCode'),
'update'=>'#'.CHtml::activeId($model,'fee_code_id'),
))); ?>
<?php echo $form->error($model,'grade_level_id'); ?>
</div>
<div class="row">
<?php echo $form->labelEx($model,'fee_code_id'); ?>
<?php echo $form->dropDownList($model,'fee_code_id', CHtml::listData(
fee_code::model()->findAll(), 'id', 'fee_code'),
array(
'prompt' => 'Select a fee code',
'ajax' => array(
'type' =>'POST',
'url' => CController::createUrl('assessment_detail/dynamicDesc'),
'update'=>'#'.CHtml::activeId($model,'fee_description_id'),
))); ?>
<?php echo $form->error($model,'fee_code_id'); ?>
</div>
<div class="row">
<?php echo $form->labelEx($model,'fee_description_id'); ?>
<?php echo $form->dropDownList($model,'fee_description_id', CHtml::listData(fee_description::model()->findAll(), 'id', 'fee_desc_code'),array('prompt' => '- - select fee code - -')); ?>
<?php echo $form-> error($model,'fee_description_id'); ?>
</div>
this is the ERD
1073