Leo*_*tos -3 php entity symfony
我有一个名为User的实体,我想创建一个DateTime字段。
我的课:
<?php
namespace App\Entity;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;
/**
* @ORM\Entity(repositoryClass="App\Repository\UserRepository")
*/
class User
{
/**
* @ORM\Id
* @ORM\GeneratedValue
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\Column(type="string", length=250)
*/
private $firstName;
/**
* @ORM\Column(type="string", length=250)
*/
private $lastName;
/**
* @ORM\Column(type="string", length=250, nullable = true)
*/
private $userName;
/**
* @ORM\Column(type="string", length=50)
*/
private $email;
/**
* @ORM\Column(type="string", length=20)
*/
private $password;
/**
*@Assert\DateTime()
*/
private $regData;
// GETTERS AND SETTERS
}
Run Code Online (Sandbox Code Playgroud)
运行时php bin/console doctrine:migrations:diff,出现以下错误消息:
[Semantical Error] The annotation "@Symfony\Component\Validator\Constraints\DateTime" in property App\Entity\User::$regData does not exist, or could not be auto-loaded.
Run Code Online (Sandbox Code Playgroud)
我不明白为什么会收到此错误消息。我以为我的代码是正确的。我正在遵循Symfony 4文档的这一部分。
Assert\DateTime 仅对您的媒体资源施加约束:这意味着,当您提交表单时,如果数据不可转换为日期,则该数据将无效。
您必须使用ORM\Column(type="datetime")for理论将其存储在数据库中。
当然,同时使用两者可以保留和验证数据
/**
* @Assert\DateTime()
* @ORM\Column(type="datetime")
*/
private $regData;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1698 次 |
| 最近记录: |