形式是實體服務顯示名稱,但插入ID絲毫實體字段類型
namespace Main\HomeBundle\Form;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolverInterface;
class ServicesType extends AbstractType
{
/**
* @param FormBuilderInterface $builder
* @param array $options
*/
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('techId', 'entity', array(
'class' => 'MainHomeBundle:Technical',
'property' => 'id',
))
->add('status', 'choice', array(
'choices' => array(
'pending' => 'Pending',
'finished' => 'Finished',
), 'multiple' => false), array('required'=>true))
->add('payment', 'text', array('required'=>true))
->add('endtime', 'datetime', array('required'=>true))
->add('send', 'submit')
;
}
/**
* @param OptionsResolverInterface $resolver
*/
public function setDefaultOptions(OptionsResolverInterface $resolver)
{
$resolver->setDefaults(array(
'data_class' => 'Main\HomeBundle\Entity\Services'
));
}
/**
* @return string
*/
public function getName()
{
return 'main_homebundle_services';
}
}
使用此方法在一個更新的形式來顯示選擇的用戶。問題是當數據發送時,發送名稱並希望在選擇中顯示名稱時發送該ID。
不使用數據庫或關係的實體
實體服務技術ID想在techId要插入的服務
class Services
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer", nullable=false)
* @ORM\Id
* @ORM\GeneratedValue(strategy="IDENTITY")
*/
private $id;
/**
* @var integer
*
* @ORM\Column(name="customer_id", type="integer", nullable=false)
*/
private $customerId;
/**
* @var integer
*
* @ORM\Column(name="tech_id", type="integer", nullable=true)
*/
private $techId;
techId與另一個實體鏈接
class Technical
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer", nullable=false)
* @ORM\Id
* @ORM\GeneratedValue(strategy="IDENTITY")
*/
private $id;
/**
* @var string
*
* @Assert\NotBlank()
* @Assert\Length(
* min = 8,
* max = 55,
* minMessage = "{{ limit }}",
* maxMessage = "{{ limit }}"
*)
*
* @ORM\Column(name="name", type="string", length=55, nullable=false)
*/
private $name;
public function __toString()
{
return $this->nombre;
}
只有翔實的方式,因爲在數據庫或實體沒有任何關係
請出示您的完整FormType和用戶實體 – DerStoffel
爲什麼你需要發送的ID? – DonCallisto
添加更多信息 – Eguiarte