0
如何將label, trim, attr => [placeholder => "Field name"]
添加到實體以顯示在窗體中(形式ContactMessageType,實體ContactMessage)? 我想在一個文件 - >實體類ContactMessage中配置表單字段和實體字段。 這可能嗎?如果是,如何? 如果不是,該怎麼辦?Symfony2:如何將標籤,attr添加到實體以顯示在表單中(ContactType表單,實體ContactMessage)?
我的實體:
use Symfony\Component\Validator\Constraints as Assert;
use Doctrine\ORM\Mapping as ORM;
/**
* php app/console doctrine:schema:validate
* php app/console doctrine:schema:update --force
*
* Class ContactMessage
* @see http://symfony.com/doc/2.8/doctrine/registration_form.html
*
* @ORM\Entity
* @ORM\Table(name="contact_messages", options={"collate"="utf8_general_ci"})
*/
class ContactMessage
{
public function __construct()
{
$this->createdDateTime = new \DateTime("now");
}
/**
* @ORM\Column(type="integer", nullable=false, options={"unsigned":true, "length":11})
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*
* @var integer
*/
protected $id;
/**
* @Assert\NotBlank()
*
* @ORM\Column(type="string", name="sender_name", nullable=false, length=255, options={})
*
* @var string
*/
protected $senderName;
/**
* @Assert\NotBlank()
*
* @ORM\Column(type="string", name="sender_email", nullable=false, length=512, options={"default":""})
*
* @var string
*/
protected $senderEmail;
/**
*
*
* @ORM\Column(type="string", name="sender_message", nullable=false, length=4096, options={"default":""})
*
* @var string
*/
protected $senderMessage;
/**
*
* @ORM\Column(type="string", name="sender_phone_number", nullable=false, length=16, options={"default":""})
*
* @var string
*/
protected $senderPhoneNumber;
/**
* @ORM\Column(type="datetime", name="created_date_time", nullable=false, options={"default": "0000-00-00 00:00:00"})
*
* @var \DateTime
*/
protected $createdDateTime;
}
我知道,我想要做的它在實體中。與@Assert \ ...因爲我寫了儘可能多的一個文件(實體),我添加實體形式作爲數據,所以我不知道如果你的代碼不會損害形式,當我有兩次'senderName'的形式,從實體和手動寫在建設者 – Radek
@Assert不用於這一點,你不能。它僅用於在數據上添加斷言。 您需要將您的表單從您的實體中分離出來,因爲可能在未來,您需要爲一個實體提供多種表格 – Bouffe
好的,謝謝,傷害。 – Radek