如何将输入数据保存到不同名称的数据库列?

时间:2012-07-12 17:27:54

标签: cakephp cakephp-2.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
));

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

2 个答案:

答案 0 :(得分:1)

您可以通过将特定键/值对添加到name <{1}}

input数组来指定options的{​​{1}}属性
FormHelper::input

答案 1 :(得分:0)

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

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

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