Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Symfony2:用户注册表中的优惠券字段_Symfony_Registration_Coupon - Fatal编程技术网

Symfony2:用户注册表中的优惠券字段

Symfony2:用户注册表中的优惠券字段,symfony,registration,coupon,Symfony,Registration,Coupon,我想在用户注册上设置一个功能:用户可以输入以前生成并存储在表中的优惠券代码。该字段将与用户注册表一起显示。如果他们输入了一个不存在的代码,则表单不应验证,应显示一条错误消息,告诉他们该代码无效。 实现这一目标的最佳实践是什么 我的问题是优惠券字段没有链接到用户实体。 我可以使用ajax检查优惠券代码的有效性,并且只有在代码存在或字段为空时才验证表单。 但是如果我继续这样做,我如何访问RegistrationFormHandler中的优惠券代码数据?其目的是为输入有效代码的用户提供特殊权限 这是一

我想在用户注册上设置一个功能:用户可以输入以前生成并存储在表中的优惠券代码。该字段将与用户注册表一起显示。如果他们输入了一个不存在的代码,则表单不应验证,应显示一条错误消息,告诉他们该代码无效。 实现这一目标的最佳实践是什么

我的问题是优惠券字段没有链接到用户实体。 我可以使用ajax检查优惠券代码的有效性,并且只有在代码存在或字段为空时才验证表单。 但是如果我继续这样做,我如何访问RegistrationFormHandler中的优惠券代码数据?其目的是为输入有效代码的用户提供特殊权限


这是一种很好的方法吗?

在表单中添加一个带有false
属性的文本字段。\u路径

$builder->add('优惠券','text',数组('property_path'=>false));
使用ajax或自定义事件订阅服务器(我更喜欢后者)验证它。在控制器中,检查表单是否有效就足够了:

if('POST'==$request->getMethod()){
$form->bindRequest($request);
}
if('GET'==$request->getMethod()&&&$form->isValid()){
//在这里,用户和优惠券都是有效的
$优惠券=$form->get('优惠券')->getData();
}

工作正常,谢谢!另外,您能解释一下为什么您更愿意使用事件订阅服务器而不是ajax吗?Personnaly我对ajax比较满意,所以我使用了它。@Marronsuisse只是因为如果你已经用一篇文章(没有ajax)验证了你的用户实体,我也会用优惠券验证它。。。