我正在使用doctrine和zend框架2,在更新控制器类代码时,我收到以下错误消息
未定义的方法'getFkcountryByName'。方法名称必须以 findBy或findOneBy!
$country = $entityManager->getRepository('\Synchro\Entity\Geographicalarea')->getFkcountryByName($geographical ['nom_departement']);
我通过添加实体名称库来解决这个问题,但我现在得到了这个错误:
执行时发生异常 'SELECT c0_.idCountry AS idCountry_0,c0_.codeCountry AS codeCountry_1, c0_.nameCountry AS nameCountry_2 FROM country c0_ WHERE c0_.nameCountry ='Pyr n es-Atlantiques'':
SQLSTATE [HY000]:常规错误:1267非法混合排序规则 (latin1_swedish_ci,IMPLICIT)和(utf8_general_ci,COERCIBLE) operation'='
我该如何解决?
由于
答案 0 :(得分:1)
试
country = $entityManager->getRepository('\Synchro\Entity\Geographicalarea')->getFkcountryByName(utf8_encode($geographical ['nom_departement']));
要注意的关键点是utf8_encode();