CakePhp FormHelper - 日期字段问题

CakePhp FormHelper - Date field issue

在我的 "register" 操作的 "view" 中,我尝试为出生日期创建一个日期字段。

echo $this->Form->input("Member.dateofbirth", array(
            "label" => "Date of birth",
            "name" => "date_of_birth",
            "id" => "date_of_birth",
            "empty" => true,
);

但是当我使用提交按钮发送数据并创建 debug() 时,我看到 $this-> request->data["date_of_birth"] 只包含年,不包含月和日。

debug($this->request->data["date_of_birth"]);

debug() 的结果:

array(
    'date_of_birth' => '1990'
)

我猜如果你在FormHelper中设置name选项,它只会修改第一个输入的名称(日期字段有3个输入)。这就是为什么当您尝试读取具有该名称的字段时只会得到年份的原因。

如果你真的不需要不同的输入名称,你应该坚持使用默认值。

因此,在这种情况下,删除 FormHelper 中的 name 选项将允许您像 $this->request->data["Member"]["dateofbirth"]

一样读取字段