我正在做一个小应用程序。为此,我有两个表,例如 sles 和 stores 销售表看起来像这样
============
Sales
============
id
store_id
Stores
=============
id
store_name
store_location
store_code
description
我已经为这两个表完成了模型和 CRUD。在商店表中,我根据表输入了一些值。现在在销售控制器中,我已经呈现了销售和商店。所以在这里我的动作创建看起来像这样
public function actionCreate()
{
$model=new Sales;
$stores = new Stores;
// Uncomment the following line if AJAX validation is needed
// $this->performAjaxValidation($model);
if(isset($_POST['Sales'], $_POST['Stores']))
{
$model->attributes=$_POST['Sales'];
$stores->attributes=$_POST['Stores'];
$valid = $model->validate();
$valid = $stores->validate();
if($valid)
{
$stores->save(false);
$model->store_id = $stores->getPrimaryKey();
$model->save(false);
$this->redirect(array('view','id'=>$model->id));
}
}
$this->render('create',array(
'model'=>$model,
'stores'=>$stores,
));
}
在 sales(_form.php) 中是这样的
<div class="row">
<?php echo $form->labelEx($stores,'store_name'); ?>
<?php echo $form->textField($stores,'store_name',array('size'=>60,'maxlength'=>80)); ?>
<?php echo $form->error($stores,'store_name'); ?>
</div>
<div class="row">
<?php echo $form->labelEx($stores,'store_location'); ?>
<?php echo $form->textField($stores,'store_location',array('size'=>45,'maxlength'=>45)); ?>
<?php echo $form->error($stores,'store_location'); ?>
</div>
<div class="row">
<?php echo $form->labelEx($stores,'store_code'); ?>
<?php echo $form->textField($stores,'store_code',array('size'=>45,'maxlength'=>45)); ?>
<?php echo $form->error($stores,'store_code'); ?>
</div>
现在,当我进行销售时,我希望当我通过输入键输入一个商店名称时,它将开始显示相关stores names
的,store_location
并且store_code
将自动填充。现在有人可以告诉我该怎么做吗?任何帮助和建议都将不胜感激。非常感谢。
编辑只有一个字段可以自动完成 。但我希望所有其他相关字段也应该自动完成。