php – 推进类重建后“基础查询”中的多个函数声明
作者:互联网
我修改了我的db和一些fk关系.在重建模式和重建类之后,我在尝试使用该类时收到错误消息
Fatal error: Cannot redeclare BaseHrlibQualificationLevelQuery::filterByHrlibQualification() in C:\wamp\www\cbm_hr\trunk\cbm\plugins\cbmHrLibPlugin\lib\model\om\BaseHrlibQualificationLevelQuery.php on line 717
我检查了架构,但同一个表中没有多列.
还有什么其他东西可以导致函数的多个声明?
解决方法:
我刚遇到类似的问题.虽然你的问题没有提到你是否有多个外键到同一个外表,但我怀疑这是问题所在.
我有:
<foreign-key foreignTable="dish" phpName="Dish" refPhpName="Menu">
<reference local="soup_id" foreign="id"/>
</foreign-key>
<foreign-key foreignTable="dish" phpName="Dish" refPhpName="Menu">
<reference local="main_id" foreign="id"/>
</foreign-key>
我有这个错误信息:
PHP Fatal error: Cannot redeclare BaseMenuQuery::filterByDish()
然后我改变了phpName和refPhpName属性(后者是必需的,因为Propel会在外表类中生成filterBySomething()函数,因此在我的情况下有多个filterByMenu()函数名称):
<foreign-key foreignTable="dish" phpName="soupDish" refPhpName="sMenu">
<reference local="soup_id" foreign="id"/>
</foreign-key>
<foreign-key foreignTable="dish" phpName="mainDish" refPhpName="mMenu">
<reference local="main_id" foreign="id"/>
</foreign-key>
所以我猜你有多个外键对HrlibQualification表有多个引用.
我希望有所帮助.
标签:symfony-1-4,propel,php 来源: https://codeday.me/bug/20190901/1785026.html