2
我的目標是在用戶信息中心等構成,顯示一個社交網絡的形式:實體場形狀的Symfony2
- Facebook : <input>
- Twitter : <input>
- Linkedin : <input>
社交網絡是動態的(通過管理面板來管理)。 我目前有3個實體(社交,UserSocial和用戶(FOS ...))。 在用戶的實體,我只是增加了它:
/**
*@ORM\OneToMany(targetEntity="Application\SocialBundle\Entity\UserSocial", mappedBy="user")
*/
private $userSocials;
我的社會實體:
class Social
{
/**
* @var integer
*/
private $id;
/**
* @var string
*/
private $name;
/**
* @var string
*/
private $class;
...
}
我UserSocial實體:
class UserSocial
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
*@ORM\ManyToOne(targetEntity="Admin\UserBundle\Entity\User", inversedBy="userSocials")
*/
private $user;
/**
*@ORM\ManyToMany(targetEntity="Admin\SocialBundle\Entity\Social", inversedBy="userSocials")
*/
private $social;
/**
* @var string
*
* @ORM\Column(name="value", type="string", length=255)
*/
// Not really sure about it
private $value;
....
最後,UserSocialType,這就是我」 m卡住:
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('social', 'entity', array(
'class' => 'Admin\SocialBundle\Entity\Social',
'property' => 'name',
'required' => false,
))
->add('value')
;
}
它給了我一個選擇,其中包含所有社交名稱和數值輸入。我想爲DB中的每個社交實體輸入一個值。 非常感謝您的幫助。