2012-09-06 58 views
0

同一查询我有推动查询行走返回与同桌

$articles = ArticlesQuery::create()->find(); 
var_dump($articles); 
exit; 

哪些查询项目表(ID,users_id,article_category_id,images_id,标题,正文,批准,CREATED_DATE,删除),但不同的输出我得到的结果是非常不同的。

预期的结果是

object(PropelObjectCollection)[34] 

object(Articles)[35] 
    protected 'startCopy' => boolean false 
    protected 'id' => int 1 
    protected 'users_id' => int 1 
    protected 'articles_category_id' => int 1 
    protected 'images_id' => int 1 
    protected 'title' => string 'Article Title Here updated' (length=26) 
    protected 'body' => resource(68, stream) 
    protected 'approved' => int 0 
    protected 'created_date' => null 
    protected 'deleted' => null 
    protected 'aUsers' => null 
    protected 'aArticlesCategory' => null 
    protected 'alreadyInSave' => boolean false 
    protected 'alreadyInValidation' => boolean false 
    protected 'validationFailures' => 
    array 
     empty 
    protected '_new' => boolean false 
    protected '_deleted' => boolean false 
    protected 'modifiedColumns' => 
    array 
     empty 
    protected 'virtualColumns' => 
    array 
     empty 

但结果我得到的是

object(PropelObjectCollection)[49] 

object(Articles)[50] 
    protected 'startCopy' => boolean false 
    protected 'id' => int 1 
    protected 'users_id' => int 1 
    protected 'articles_category_id' => int 0 
    protected 'images_id' => int 0 
    protected 'title' => string '[email protected]' (length=22) 
    protected 'body' => resource(71, stream) 
    protected 'approved' => int 0 
    protected 'created_date' => null 
    protected 'deleted' => null 
    protected 'aUsers' => null 
    protected 'aArticlesCategory' => null 
    protected 'alreadyInSave' => boolean false 
    protected 'alreadyInValidation' => boolean false 
    protected 'validationFailures' => 
    array 
     empty 
    protected '_new' => boolean false 
    protected '_deleted' => boolean false 
    protected 'modifiedColumns' => 
    array 
     empty 
    protected 'virtualColumns' => 
    array 
     empty 

同样的查询更早的工作。我刚开始使用Propel ORM。我不知道什么是错的。我已经尝试重新生成php的运行时配置,然后生成新的模型类。我已将Propel与CI集成在一起。我仍然试图解决这个问题,我不知道是什么导致了不同的输出。

+0

你只是在你的表中有更多的项目。就这样。有关数据库中第一次测试和第二次测试的数据的任何数据? – j0k

+0

你能否用上面表格的例子来解释一下。你看到第一个结果是用相同的查询正确获得的,它没有任何改变的话可能会有所不同。仍然困惑。 – Samundra

+0

但是你什么时候运行这些查询?一个接一个地?上个月,另一个今天? – j0k

回答

1

今天,我犯了一个非常愚蠢的错误,花了我几个小时的痛苦。

其实早上我编辑的推进运行时的核心文件“运行/ lib中/查询/ ModelCriteria.php”,取而代之的

$this->modelPeerName = constant($this->modelName . '::PEER'); 
// with 
$this->modelPeerName = 'UsersPeer' 

造成推动仅从用户表中返回的数据。 @ j0k感谢持续的支持,让我不断调试这个问题。

我之前替换了代码,因为propel生成的代码仅对UsersQuery不起作用,无法定位常量($ this-> modelName。':: PEER');正常。

希望这不会发生在任何人身上,我会随时跟踪我所做的更改。找到实际的错误后,我恢复到原始来源,查询开始像以前一样工作。

+0

这样一个愚蠢的想法:)不要忘记标记自己的答案被接受。 – j0k

+0

感谢您的回答!我一直在为此工作数小时,当然这与课堂碰撞一样简单。我几乎放弃了推进大声笑。 –