改进关联模型的关联键值和表名读取

This commit is contained in:
thinkphp
2016-04-20 15:31:25 +08:00
parent b3d592da95
commit 02934b0d27
3 changed files with 8 additions and 6 deletions

View File

@@ -862,9 +862,10 @@ abstract class Model implements \JsonSerializable, \ArrayAccess
{
// 记录当前关联信息
$model = $this->parseModel($model);
$table = $table ?: Db::name(strtolower($this->name . '_' . basename(str_replace('\\', '/', $model))))->getTableName();
$localKey = $localKey ?: Loader::parseName(basename(str_replace('\\', '/', $model))) . '_id';
$foreignKey = $foreignKey ?: strtolower($this->name) . '_id';
$name = Loader::parseName(basename(str_replace('\\', '/', $model)));
$table = $table ?: Db::name(Loader::parseName($this->name) . '_' . $name)->getTableName();
$localKey = $localKey ?: $name . '_id';
$foreignKey = $foreignKey ?: Loader::parseName($this->name) . '_id';
return $this->relation->belongsToMany($model, $table, $localKey, $foreignKey);
}