2013-04-02 72 views
0

我有一个基本的Symfony2/Doctrine2问题。我有两个实体,第一个被称为“列”,有OneToMany问题,实体“问题”。问题实体与实体列具有ManyToOne关系。当我创建一个新问题时,我希望为该列分配一个默认值。将默认值分配给oneToMany关联

如果我在IssueType.php中创建了一个隐藏字段并指定了默认值,我无法保存提交的表单,因为我得到了一个有关将字符串分配给setColumn的错误,而不是我的Issue实体中定义的Column实体的实例(见下文)。

public function setColumn(\WebConfection\ServiceDeskBundle\Entity\Column $column) 
{ 
    $this->column = $column; 

    return $this; 
} 

任何人都可以请建议最好的方法来实现这一目标吗?我已经阅读了一些文章,但有点困惑,不知道跳哪种方式。一个白痴友好的答案将不胜感激。

+0

我可以得到它错了,但并没有就此帮助:http://stackoverflow.com/questions/15752115/symfony2为实体字段设置一个选定的值? – cheesemacfly

回答

1

你不需要一个隐藏的领域来工作。只需设置你想要你的行动中添加了问题的正确(默认值)列,

// ... 
$issue = new Issue(); 
$issue->setColumn($yourDefaultColumn); 

$form = $this->createForm('your_issue_form', $issue); 
// ...