yii framework에서 작은 응용 프로그램을 수행하고 있습니다. 내가 products and sales
제품 테이블로 이름을 내 데이터베이스에 두 개의 테이블이 어디 내가 방금 만든 그 후 GII 도구 (CRUD) 에서 모델과 컨트롤러를 수행 한 모든 위의 두 테이블의 경우이Yii Framewok 외래 키 저장소 드롭 다운 목록에서 선택한 경우
================
product
================
+ id +
+ product_name +
+ cost_price +
+selling_price +
+ created_by +
+ updated_by +
+ created_at +
+ updated_at +
+++++++++++++++++
=================
Sales
=================
+ id +
+ product_id +
+ price +
+ created_by +
+ updated_by +
+ created_at +
+ updated_at +
+++++++++++++++++
같은 것입니다 판매 모델의 관계. 관계는 다음과 같습니다.
public function relations()
{
// NOTE: you may need to adjust the relation name and the related
// class name for the relations automatically generated below.
return array(
'product' => array(self::HAS_MANY,'Products','product_id'),
);
}
그런 다음 Sales 모델에서 Products 모델을 렌더링했습니다. 컨트롤러 액션을 만들 매출이
public function actionCreate()
{
$model=new Sales;
$products = new Products;
// Uncomment the following line if AJAX validation is needed
// $this->performAjaxValidation($model);
if(isset($_POST['Sales'], $_POST['Products']))
{
$model->attributes=$_POST['Sales'];
$products->attributes = $_POST['Products'];
$valid = $model->validate();
$valid = $products->validate();
if($valid)
{
$products->save(false);
$model->product_id = $products->getPrimaryKey();
$model->save(false);
$this->redirect(array('view','id'=>$model->id));
}
}
$this->render('create',array(
'model'=>$model,
'products' =>$products,
));
}
같은 볼에 나는 제품 테이블에서 사용할 수있는 모든 제품의 드롭 다운 목록을하고있는 중이 야 다음은이
<div class="row">
<?php echo $form->labelEx($products,'product_name'); ?>
<?php echo $form->dropdownList($products,'product_name', CHtml::listData(Products::model()->findAll(), 'id', 'product_name'), array('empty'=>array('choose'=>'---Select One---'))); ?>
<?php echo $form->error($products,'product_name'); ?>
</div>
<div class="row">
<?php echo $form->labelEx($model,'price'); ?>
<?php echo $form->textField($model,'price'); ?>
<?php echo $form->error($model,'price'); ?>
</div>
같은 파일을 렌더링하고있다. 그 후에 내가 할 때 전체 양식을 저장하십시오.
NULL을 표시하는 product_id 내부 판매 테이블. 선택한 제품을 드롭 다운에서 선택하면 해당 위치에 외래 키가 필요합니다. 내가 잘못하고있는 곳을 친절하게 말해줘. 어떤 도움이나 제안이라도 대단히 감사 할 것입니다. 감사합니다
드롭 다운에서 항목을 선택하면 어떤 작업을하고 싶습니까 ?? – Ninad
@Ninad 제품의 참조 키 (외래 키)를 데이터베이스에 저장하려고합니다. – NewUser
제품을 선택하면 다음과 같은 의미가됩니다. ex : Iphone이 ID가 참조되는 판매 항목의 ID 또는 Db에 해당 ID를 저장 하시겠습니까? – Ninad