0

我面临一个奇怪的问题。我在 Windows 上制作了一个应用程序,我正在尝试将它部署到 Linux。我知道案件的问题,并在可能的地方进行了纠正,但这次我不知道该怎么办。

我有以下模型:

public function relations()
{
    $tmp=parent::relations();
    $tmp['applied_teams']=array(self::MANY_MANY, 'Group',     'qualification(group_id,competition_id)');
    $tmp['rounds'] = array(self::MANY_MANY,     'Competition','competitions_competitions(competition_parent,competition_child)');
    return $tmp;
}

其中applied_teams 返回null,但不四舍五入。记录在数据库中是正确的。您知道这两个操作系统之间会有什么不同吗?

更新

我已经写了一个解决方法,但还没有找到问题的原因。getter方法在linux上没有问题:

public function getAppliedTeams() {
        $qs = Qualification::model()->findAll('competition_id=:c', array(':c' => $this->competition_id));
        if ($qs == null) {
            return null;
        }
        $results = array();
        foreach ($qs as $q) {
            $results[] = $q->group;
        }
        return $results;
    }
4

1 回答 1

0

问题出在 MySQL 引擎上。服务器的默认值是 MyISAM,而不是 InnoDB,但是外键创建没有抛出异常..

于 2014-05-17T15:06:27.827 回答