文件:laibrary/think/model/relationmodel.class.php line:183 开始
错误1:
$mappingCondition = " {$mappingFk}='{$pk}'";后面的sql:$sql = "SELECT b.{$mappingFields} FROM {$mappingRelationTable} AS a, ".$model->getTableName()." AS b WHERE a.{$mappingRelationFk} = b.{$model->getPk()} AND a.{$mappingCondition}";会导致出现:a. id=**
a.后面会多个空格。
还有个问题:
getRelationTableName 这个方法有错:
public function getRelationTableName($relation) {
$relationTable = !empty($this->tablePrefix) ? $this->tablePrefix : '';
$relationTable .= $this->tableName?$this->tableName:$this->name;
$relationTable .= '_'.$relation->getModelName();
return strtolower($relationTable);
}$relationTable .= '_'.$relation->getModelName(); 这句导致relationTable 变成了主表加从表的一起去了。 返回的结果也是错误的。开发组在think4里面的代码也有这个错误。还是没修复的。
最佳答案