我有一个这样的课:
class Student {
const GENDER_MALE = "male", GENDER_FEMALE = "female";
/**
* @var string $gender
*
* @ORM\Column(name="gender", type="string", length=50,nullable=false)
* @Assert\NotBlank(message="Gender cannot be blank",groups={"new"})
* @Assert\Choice(choices = {"male", "female"}, message = "Choose a valid gender.", groups={"new"})
*/
private $gender;
Run Code Online (Sandbox Code Playgroud)
我必须硬编码值"male"和"female".可以这样做吗?
choices = {self :: GENDER_MALE,self :: GENDER_FEMALE}
我创建了一个带有学说的表格.如果我没有通过任何选项,它会工作,如下所示:
$builder
->add('name')
->add('password', 'password')
->add('password_repeat', 'password')
->add('email', 'email')
->add('save', 'submit')
;
Run Code Online (Sandbox Code Playgroud)
但是,如果我添加一个带有选项的数组,就像文档(http://symfony.com/doc/current/book/forms.html#book-form-creating-form-classes)那样,我收到的错误是:
预期参数类型为"string或Symfony\Component\Form\FormTypeInterface","数组"给出
这是由学说创建的formtype:
<?php
namespace MainBundle\Form;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolverInterface;
class UserType extends AbstractType
{
/**
* @param FormBuilderInterface $builder
* @param array $options
*/
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('name') //if I put ->add('name', array('label' => 'Your name')) I get the error
->add('password', 'password')
->add('password_repeat', 'password')
->add('email', 'email')
->add('save', 'submit')
;
}
/**
* @param OptionsResolverInterface $resolver
*/
public function …Run Code Online (Sandbox Code Playgroud) 我目前正在将单个变量中的数组元素与它们之间的 , 连接起来。我得到这样的记录
abc,def,ghi,
Run Code Online (Sandbox Code Playgroud)
我不想,在最后一个元素后添加一个额外的逗号。我的代码是:
{% for driver in item.vehicles if driver.driver.firstName %}
{% set isDriver = 1 %}
{% set driverList = driverList ~ driver.driver.firstName ~ ',' %}
{% endfor %}
Run Code Online (Sandbox Code Playgroud) 我有以下树枝模板:
{# layout.twig #}
{% block content %}
THIS IS LAYOUT
{% endblock %}
Run Code Online (Sandbox Code Playgroud)
{# secondary_layout.twig #}
{% extends layout.twig %}
{% block content %}
THIS IS SECONDARY_LAYOUT
{% endblock %}
Run Code Online (Sandbox Code Playgroud)
{# mypage.twig #}
{% extends secondary_layout.twig %}
{% block content %}
{# I WOULD LIKE TO USE layout content block here #}
{% endblock %}
Run Code Online (Sandbox Code Playgroud)
我可以在mypage.twig的内容块内调用parent(),但是如何使用祖父母呢?