0

基本上,我有一些代码可以验证我的输入(这是其中的一部分):

    'r_email' => array(
        'exist' => array(
            'rule' => 'checkEmailExist',
            'message' => 'That email has already been used.'
        ),
        'required' => array(
            'rule' => array('notEmpty'),
            'message' => 'The email field must not be blank.'
        ),
        'valid' => array(
            'rule' => 'email',
            'message' => 'You must enter a valid email address'
        ),
    ),

所以我有我的验证规则,当我这样做时它们会起作用:

if ($this->User->save($this->request->data)) {

我的输入表单是这样的(用于上述验证):

echo $this->Form->input('r_email', array(
    'type' => 'text',
    'label' => 'Email Address',
    'div' => false
));

但是我数据库中的列与表单输入的名称不同,因此我假设数据不会保存,因为它没有链接。我不确定如何解决这个问题并将数据保存到我的列中?

4

2 回答 2

1

您可以通过将特定的键/值对添加到数组中来指定您的name属性inputoptionsFormHelper::input

echo $this->Form->input('r_email', array(
    'type' => 'text',
    'label' => 'Email Address',
    'div' => false,
    'name' => 'data[User][field_in_database]'
));
于 2012-07-13T13:58:37.853 回答
0

您可以使用 $this->YourModelName->expectedfield=$this->data[ModelName][r_email]

此处 YourModelName 将表示您将在哪个表中插入此 r_email,expectedFirled 表示您将在哪个字段中插入 r_email。

如果你不能得到答案,你可以回复以获取更多信息。

于 2012-07-12T22:19:24.603 回答