unique验证规则支持指定完整模型类 并且默认会优先检测模型类是否存在 不存在则检测数据表

This commit is contained in:
thinkphp
2016-12-20 14:41:27 +08:00
parent c695397733
commit 2ee49f5dcb

View File

@@ -13,6 +13,7 @@ namespace think;
use think\File;
use think\Lang;
use think\Loader;
use think\Request;
use think\Session;
@@ -812,7 +813,17 @@ class Validate
if (is_string($rule)) {
$rule = explode(',', $rule);
}
$db = Db::name($rule[0]);
if (false !== strpos($rule[0], '\\')) {
// 指定模型类
$db = new $rule[0];
} else {
$model = Loader::parseClass(Request::instance()->module, 'model', $rule[0]);
if (class_exists($model)) {
$db = new $model;
} else {
$db = Db::name($rule[0]);
}
}
$key = isset($rule[1]) ? $rule[1] : $field;
if (strpos($key, '^')) {