我可以在没有 formhelper 的情况下使用 Cakephp 验证吗?
例如,我是这样创建模型、控制器和视图的
模型:
class KnowledgeBase extends AppModel {
public $useTable = 'corp_kb';
public $validate = array(
'kb_title' => array(
'rule' => array('minLength', '2'),
'required' => true,
'message' => 'min 2 char'
),
);
}
控制器:
class KnowledgeBaseController extends AppController
{
var $name = 'KnowledgeBase';
var $ext = '.php';
public $helpers = array ('Html', 'Form', 'Js');
function kb_fill()
{
$this->layout = 'ajax';
}
function kb_input()
{
$this->autoRender = false;
$this->KnowledgeBase->set($this->data);
if(!empty($this->data))
{
if($this->KnowledgeBase->validates())
{
debug($this->data);
}
else
{
}
}
else
{
echo "data empty";
}
}
查看“kb_fill”:
<form id="kb_frm" method="get" action="" >
<input type="text" name="data[Knowledgebase][kb_title]"/>
<button id="postbutton">Post !</button>
</form>
出于某种原因,我使用 ajax 通过按钮 id 将帖子加载到 kb_input 中,并且不能使用通常的方法。cakephp 验证不起作用,或者没有显示消息错误,如果没有 formhelper,我该如何使用它?