私は Yii フレームワークに少し慣れていません。3つの基本モデルを持つ製品販売Webサイトを作成してい
ます1.主キーIDを含むユーザーモデル
2.主キーIDを含む製品モデル
3.基本的に製品と注文の間のマッピングである注文モデル。これには、フィールドproduct_idおよびuser_idが外部キーとして含まれています。
すべての製品が表示され、ログインしたユーザーが製品ボックスのボタンをクリックして特定の製品を注文できるページを作成しました。
リンクのコードはこのようなものです
<?php echo CHtml::link('Order Now',array('order',
'product_id'=>$model->id,
'user_id'=>Yii::app()->user->id)); ?>
(Q1) GETリクエストの送信ですが、詳細をポストリクエストで送信したいです。これを行う方法?
私のデフォルトのコントローラーはサイトコントローラーです。このコントローラーで actionOrder メソッドを作成しました。コードは次のとおりです。
if(Yii::app()->user->isGuest){
$this->redirect('login');
}else{
$model=new Orders;
if(isset($_POST['products_id']))
{
$model->attributes->products_id=$_POST['product_id'];
$model->attributes->users_id=Yii::app()->user->id;
if($model->save())
$this->redirect(array('index'));
}
$this->render('index');
}
しかし、このコードはたくさんのエラーを示しています。また、(Q2)と の両方products_id
をusers_id
1 つの配列に入れOrders
て、書き込むだけで済むようにするにはどうすればよいですか?$_POST['orders']
また、(Q3)保存が成功した後にフラッシュ メッセージを表示するにはどうすればよいですか?
私の3つの問題を解決するのを手伝ってください。質問があまりにもばかげていると感じたら申し訳ありません.