1

我想将 validateField 与模型一起使用,但它说没有为此对象定义方法

我这样编码:

$user_payment=$this->add("Model_Payment");
$user_payment->getField("amount")
                    ->validateNotNull()
                    ->validateField('($this->get())<=0','Please enter a posetive number!');
4

2 回答 2

3

您正在尝试将 ->validateNotNull() 应用于模型。此方法应应用于表单字段,例如:

$f = $this->add('Form);
$f->setModel('Model_YourModel');

$f->getField("amount")
                ->validateNotNull()....
于 2013-09-18T15:01:30.403 回答
2

Model_Table 类中没有 getField() 方法。

可以在Form olny中调用这个方法

$f = $this->add('Form');
$f->setModel('Model_Payment');
$f->getField("amount")
       ->validateNotNull()
       ->validateField('($this->get())<=0','Please enter a posetive number!');

检查此方法的来源https://github.com/atk4/atk4/blob/master/lib/Form/Field.php#L235

于 2013-09-18T15:00:41.180 回答