这是我的表单构建器代码
public function buildForm(FormBuilder $builder, array $options)
{
$builder->add('phoneAlternative', 'number',array('max_length'=>15));
$builder->add('emailPersonal', 'email');
$builder->add('addressCurrent', 'textarea');
}
Run Code Online (Sandbox Code Playgroud)
这是html标记
<input id="employee_phoneAlternative" type="text" maxlength="15" required="required" name="employee[phoneAlternative]" class="valid">
Run Code Online (Sandbox Code Playgroud)
任何人都建议我.为什么输入类型给出"文本",因为我给出了一个数字.建筑形式.我将如何使用表单生成器在symfony2中获取输入类型为"数字".
$repository = $this->getDoctrine()->getRepository('ParabolaEntityBundle:ProjectAllocation');
$query = $repository->createQueryBuilder('p')
->where('p.startDate < :sdate and p.employee = :emp and p.endDate > :edate')
->setParameter('sdate', date('Y-m-d', time()))
->setParameter('edate', date('Y-m-d', time()))
->setParameter('emp', $employee->getId())
->getQuery();
$projectAllocate = $query->getResult();
Run Code Online (Sandbox Code Playgroud)
我如何在FormType类中使用上面的代码.我正在使用此查询为表单生成器中的选择类型生成数组.
我无法在symfony2中使用'Employee'实体进行身份验证,因为它包含许多与项目中其他实体的映射.我的一些映射如下:
/**
* @var EmployeeDesignation
*
* @ORM\ManyToOne(targetEntity="EmployeeDesignation")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="employee_designation_id", referencedColumnName="id")
* })
*/
private $employeeDesignation;
/**
* @var EmployeeDesignation
*
* @ORM\ManyToOne(targetEntity="EmployeeType")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="employee_type_id", referencedColumnName="id")
* })
*/
private $employeeType;
Run Code Online (Sandbox Code Playgroud)
身份验证在没有任何映射的情 我尝试过使用'Serialize()'和'Unserialize()'方法,如下所示:
class Employee implements AdvancedUserInterface, \Serializable {
/**
* serialize the username
* @return serialize
*/
public function serialize() {
return serialize($this->emailOfficial);
}
/**
* unserialize
* @param $data
*/
public function unserialize($data) {
$this->em = unserialize($data);
}
}
Run Code Online (Sandbox Code Playgroud)
执行上述方法后,我收到以下错误:
You cannot refresh a …Run Code Online (Sandbox Code Playgroud) 任何人都可以建议如何在我的表单窗口中自定义错误消息,例如"此值无效","密码不匹配"显示为空字段的弹出错误消息?
我想在表单类型类中调用函数.function generate array,写在实体存储库类中.使用该数组我将生成动态表单字段.这是实体存储库类函数.
public static $roleNameMap = array(
self::ROLE_SUPER_ADMIN => 'superAdmin',
self::ROLE_MANAGEMEN => 'management',
self::ROLE_MANAGERS => 'manager',
self::ROLE_IT_STAFF => 'itStaff',
self::ROLE_CS_CUSTOMER => 'csCustomer',
self::ROLE_CS => 'cs',
self::ROLE_DEALER => 'dealer',
self::ROLE_ACCOUNT_STAFF => 'accountStaff',
self::ROLE_BROKER_USER => 'staff',
);
public function getGroupListArray()
{
$qb = $this->createQueryBuilder('g')
->orderBy('g.hierarchy','ASC');
$query = $qb->getQuery();
$groupList = $query->execute();
$roleNameMap = array();
foreach ($groupList as $role){
$roleNameMap[$role->getId()] = $role->getRole();
}
return $roleNameMap;
}
Run Code Online (Sandbox Code Playgroud)
下面是我的表单构建器类,我想在上面调用实体存储库函数.
public function buildForm(FormBuilderInterface $builder, array $options) {
$builder->add('routeId', 'hidden');
foreach (GroupListRepository::$roleNameMap as $key=>$value){
$builder->add($value, 'checkbox',array('label' …Run Code Online (Sandbox Code Playgroud)