我有两个表名为Country(id,name)其他区域(id,name,idFCountry)
我在我的控制器中执行此操作:
$area = new Area();
$area->setNumarea($numarea);
$area->setNamearea($namearea);
$area->setIdfkcountry($idFCountry);
我收到此错误:
可捕获的致命错误:参数1传递给 Synchro \ Entity \ area :: setIdfkcountry()必须是。的实例 同步\实体\国家
如何解决此问题
提前致谢
答案 0 :(得分:0)
我猜$ idFCountry不是一个对象,可能(基于变量名)你试图传递一个字符串或整数。
似乎你正在使用Zend,所以解决这个问题的一个简单方法就是根据country id获取对象,假设$ idFCountry是一个包含id的字符串:
$repository = $this->getEntityManager()->getRepository('Synchro\Entity\Country');
$countryObject = findOneBy(array('idcountry' =>$idFCountry));
$area->setIdfkcountry($countryObject);