私は Cakephp を初めて使用し、バージョン 1.3 に取り組んでいます。コントローラーからフォームを検証しようとしていますが、うまくいきません。これが私のコントローラーのアクションコードです:コントローラーはcards_controller.phpです
class CardsController extends AppController {
var $name = 'Cards';
var $uses = array('Customfield','Customer','Parameter','Merchant','Merchantcard','Merchantcustomfield','Cardexist','Country','State','Customercontacts','Cardrenew');
var $helpers = array('Html','Form','Ajax','Javascript');
var $components = array('Session','RequestHandler','RequestHandler','Auth');
function index()
{
}
function renewCard()
{
if($_SESSION['Auth']['User']['id'] == "")
{
$this->redirect("../users/login");
}
$this->loadModel('Cardrenew');
$this->Cardrenew->set(array(
"customer_id" =>$id,
"merchant_id" =>$this->data['Card']['merchant_id'],
"merchant_card_id" =>$this->data['Card']
));
if($this->Cardrenew->save())
{
}
}
}
and here is the model code :
class Cardrenew extends AppModel
{
public $name = "prc_renewal_cards";
var $validate = array(
'merchant_id' => array(
'nameRule2'=>array(
'rule'=> array('check'),
'required' => true,
'message'=>'Card already exists.'
)),
'nameOnCard' => array(
'alphaNumeric' => array(
'rule' => '/^[a-z0-9 ]*$/i', // only 3 char (int or char , no spaces in string)
'required' => true,
'allowEmpty' => false,
'message' => 'Please enter alphabets and numbers only.'
))
);
nameOnCard が必要なため、コントローラは値を保存しません。検証が行われることを意味しますが、エラー メッセージは表示されません。モデル名が異なる同じコントローラーの別のアクションに適用したのと同じもので、そこでは正常に動作します。では、この行動はどうなるでしょうか?
どんな助けでも感謝します。
ありがとう