我在"PostsTable.php"内部我正在尝试获取表单数据来处理图像文件.
在CakePHP 2中,我曾经做过:
public function beforeSave($options = array())
{
if(!empty($this->data['Post']['picture']['name'])...
Run Code Online (Sandbox Code Playgroud)
有人可以在Cake 3中解释这个:
beforeSave
Cake\ORM\Table::beforeSave(Event $event, Entity $entity, ArrayObject $options)
Run Code Online (Sandbox Code Playgroud)
?
添加
我尝试这段代码,看看我是否能够将这个字段保存在数据库上,就像测试一样,但似乎在忽略之前保存:
public function beforeSave($options)
{
if(!empty($entity->pic1['name']))
{
$entity->pic1 = 'jus a test';
}
Run Code Online (Sandbox Code Playgroud)
谢谢
下面的功能是为了确保来自表单的电子邮件是唯一的,如果它已经在使用中,则会显示一条消息.我想改变这个消息.
public function buildRules(RulesChecker $rules)
{
$rules->add($rules->isUnique(['username']));
$rules->add($rules->isUnique(['email']));
return $rules;
}
Run Code Online (Sandbox Code Playgroud)
我试过这种方式:
public function buildRules(RulesChecker $rules)
{
$rules->add($rules->isUnique(['username']));
$rules->add($rules->isUnique(['email']),
['errorField' => 'email', 'message' => 'Este email já encontra-se em uso.']
);
return $rules;
}
Run Code Online (Sandbox Code Playgroud)
它有效,但两个消息都显示,默认和我的.