2

私は 1 つのユーザー モデルを持っており、もう 1 つはアクセスコード モデルです。登録時に、フォーム データにいくつかの検証ルールを設定したユーザー モデルを使用しています。

登録ページに、ユーザー モデルに属さないフィールドが 1 つあります。つまり、アクセス コード フィールドです。ユーザーモデルでこのフィールドを検証して、ユーザーが入力したコードがアクセスコードテーブルに存在するかどうかを確認し、3 番目のモデル、つまりそのアクセスコードの useraccesscode もチェックしたいと考えています。

どうすればこれを行うことができますか?CakePHP v1.2 を使用しています。

ありがとうございました

4

4 に答える 4

2

以下の例は役に立つかもしれません:

App::import('Model', 'Student');
$Student = new Student();
$dataArray =  $Student->getDataArray("name like '%".$keword."%'");
于 2013-01-28T10:20:45.530 に答える
1
$validated = $this->User->Accesscode->find('list', array('conditions' => array('Accesscode.name' => $this->data['User']['accesscode'])));

if(count($validated) > 0)
     //means that accesscode supplied in the form matches some accesscode in the database
于 2011-10-10T16:01:32.640 に答える
0
App::import('Model', 'MyModel');
于 2011-10-10T12:02:10.983 に答える
0

以下の2つの方法のいずれかを使用して、任意のモデル/コントローラー内から他のモデルのインスタンスを作成できます。

Cake 1.2を使用している場合:

App::import('model','Attribute');
$attr = new Attribute();

Cake 1.1を使用している場合:

loadModel('Attribute');
$attr = new Attribute();
于 2011-10-11T06:03:38.173 に答える