2015-09-03 80 views
2

嗨所以我设法得到这个工作和工作symfony的学说协会

我严格遵循同样的程序用户之间的关系,检查了文件,我很茫然

的关系我”米试图建立是招聘工作

1工作分配给它

../Entity/Job.php

/** 
* @ORM\OneToMany(targetEntity="Work",mappedBy="workJob") 
* 
*/ 
protected $jobToWork; 
/** 
* Add jobToWork 
* 
* @param \Laelaps\InvoiceBundle\Entity\Work $jobToWork 
* @return Job 
*/ 
public function addJobToWork(\Laelaps\InvoiceBundle\Entity\Work $jobToWork) 
{ 

    $this->jobToWork[] = $jobToWork; 

    return $this; 
} 
/** 
* Remove jobToWork 
* 
* @param \Laelaps\InvoiceBundle\Entity\Work $jobToWork 
*/ 
public function removeJobToWork(\Laelaps\InvoiceBundle\Entity\Work $jobToWork) 
{ 
    $this->jobToWork->removeElement($jobToWork); 
} 

/** 
* Get jobToWork 
* 
* @return \Doctrine\Common\Collections\Collection 
*/ 
public function getJobToWork() 
{ 
    return $this->jobToWork; 
} 
许多工作项目

../Entity/Work.php

/** 
* @ORM\ManyToOne(targetEntity="Job",inversedBy="jobToWork") 
* @ORM\JoinColumn(name="work_job", referencedColumnName="id") 
*/ 
protected $workJob; 

/** 
* Set workJob 
* 
* @param integer $workJob 
* @return Work 
*/ 
public function setWorkJob($workJob) 
{ 
    $workJob->addJobToWork($this); 
    $this->workJob = $workJob; 

    return $this; 
} 

/** 
* Get workJob 
* 
* @return integer 
*/ 
public function getWorkJob() 
{ 
    return $this->workJob; 
} 

我做了一个应用程序/控制台学说:生成:CRUD

我知道我的用户的工作关系,这是建立完全一样的工作办法。

我得到的,当我尝试去创造一个新的“工作”项目中的错误是类的 对象.. \实体\作业无法转换成字符串

任何帮助,一如既往不胜感激

UPDATE

如答案

public function __toString() 
{ 
    return (string) $this->getJobName(); 
} 

作为定义我使用的是FOSUserBundle,我的用户类扩展了FOSUser类,这意味着__toString()函数在FOSUser中定义,因此在为用户创建关联时没有问题。

回答

2

您可能尝试将您的作业显示为字符串(例如在选择框或列表中)。只需添加一个__toString()方法到您的工作实体,像这样:

public function __toString() 
{ 
    return $this->name; // For example 
} 
+0

你好先生是正确的!谢谢 – hounded