あなたには2つの選択肢があると思います。
(1)サーバーにAjaxリクエストを設定します。そうするには
:
はcheckName(という名前のSiteControllerで、Ajaxリクエストに応答機能を作成します)
public function checkName($name) {
// allow ajax requests
$this->request->allowMethod(['ajax']);
// perform your check within the db
$isExistent = [...];
// prepare the response
$response = ['name' => $name, 'isExistent' => $isExistent];
if ($this->request->isAjax()){
$this->autoRender = false;
$this->response->disableCache();
$this->response->type(['json' => 'application/json']);
$this->response->body(json_encode($response));
}
}
あなたのルートにルートを追加してファイルオプション'_ext' => 'json'
あなたが定義したルートを呼び出すJavascript Ajax関数を準備し、あなたの入力フィールドのonchange属性にそれを添付してください。 (簡単な例については、このリンクを参照してください。http://www.w3schools.com/jquery/ajax_ajax.asp)
(2)独自のサイトの表の「名前」フィールドを確認します。
ので、あなたのSiteTableクラス
public function buildRules(
RulesChecker $rules
) {
$rules->add($rules->isUnique(['name']));
return $rules;
}
に次の関数を追加することができます行うには、あなたのテーブル構造について教えてとフィールドを使用して、検証したい場合には、全体の多く容易になります。 –