私はFosUserBundle登録フォームを拡張しようとしています。ユーザー名フィールドを削除/設定解除する必要があります(私はユーザー名として電子メールを使用しているためです)。Symfony2のフォームフィールドの削除/設定解除
私が拡張しているフォームからフィールドを削除する方法はありますか?
私はFosUserBundle登録フォームを拡張しようとしています。ユーザー名フィールドを削除/設定解除する必要があります(私はユーザー名として電子メールを使用しているためです)。Symfony2のフォームフィールドの削除/設定解除
私が拡張しているフォームからフィールドを削除する方法はありますか?
あなたは解除/あなたのような何かを行うことができますFOSUserの1を拡張し、フォームタイプでいくつかのフィールド削除する場合:
public function buildForm(FormBuilder $builder, array $options)
{
parent::buildForm($builder, $options);
$builder->remove('username');
}
を使用すると、たとえば、制約の属性を上書きしたい場合は、あなたがこのような何かを行うことができます:
<?php
namespace Acme\UserBundle\Entity;
use FOS\UserBundle\Entity\User as BaseUser;
use Doctrine\ORM\Mapping as ORM;
/**
* User
*
* @ORM\Table()
* @ORM\Entity(repositoryClass="Acme\UserBundle\Entity\UserRepository")
* @ORM\AttributeOverrides({
* @ORM\AttributeOverride(name="username", [email protected]\Column(nullable = true, unique = false))
* })
*/
class User extends BaseUser {
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
}
ありがとう、誰かがIRCでこれを提案しました。残念ながら、それは私が求めたものとまったく同じですが、検証配列は変更されません。バリデーションを修正するには、フォームをもっと混乱させる必要があります。 – MrGlass