ボタンのクリック時にコントローラーでアクションを呼び出すのに問題があります。したがって、コントローラーは によって生成されGii
ます。そのすべてのアクションは、Gii によって生成されたデフォルトのものです。actionCreate().
関連するコードは次のとおりです::
class ProductsController extends Controller {
public function actionCreate() {
$model = new Products;
if (isset($_POST['params'])) {
// $model->attributes = $_POST['Products'];
//if ($model->save())
// $this->redirect(array('view', 'id' => $model->id));
echo 'Yes Working';
}
$this->render('create', array(
'model' => $model,
));
}
上記のコード スニペットから明らかなように、このアクションは create.php という名前のビューを呼び出しています。ここに create.php があります::
<div class="page">
<div class="container">
<div class="row">
<h2>Create Products</h2>
<?php echo $this->renderPartial('_form', array('model' => $model)); ?>
</div>
</div>
そして、これが部分的にレンダリングされたフォームです。
<?php
$form = $this->beginWidget('bootstrap.widgets.TbActiveForm', array(
'id' => 'products-form',
'action' => Yii::app()->createUrl('products/create'),
'enableAjaxValidation' => false,
));
?>
<div class="form-actions">
<?php
echo CHtml::submitButton('Create', array(
'submit' => 'EasyAesthetics/index.php/products/create',
'params' => '1'
));
?>
</div>
<?php $this->endWidget(); ?>
今私が欲しいのは、「作成」ボタンをクリックするとactionCreate()
、ProductsController
. 現在、ボタンは機能しており、/demoProject/index.php/products/create にリダイレクトされていますが、'Yes Working' というエコーが表示されません。
誰でもこれを達成する方法を教えてください。$_POST
ボタンと配列内の 1 だけを使用して、作成アクションを再度呼び出すにはどうすればよいですか。
これを行う必要があるのは、[作成] をクリックすると、actionCreate()
メソッドが関連するコンポーネントを呼び出して必要な製品を作成するようにするためです。