Explorar o código

fix 当 grid 的 filter 或者 selector 使用关联模型将会出错 BUG

Edwin Xu %!s(int64=3) %!d(string=hai) anos
pai
achega
412baccbbb
Modificáronse 1 ficheiros con 4 adicións e 3 borrados
  1. 4 3
      src/Support/Helper.php

+ 4 - 3
src/Support/Helper.php

@@ -820,13 +820,14 @@ class Helper
     {
         $column = explode('.', $column);
 
-        array_unshift($params, array_pop($column));
+        $relColumn = array_pop($column);
 
         // 增加对whereHasIn的支持
         $method = class_exists(WhereHasInServiceProvider::class) ? 'whereHasIn' : 'whereHas';
 
-        $model->$method(implode('.', $column), function ($relation) use ($params, $query) {
-            $relation->$query(...$params);
+        $model->$method(implode('.', $column), function ($relation) use ($relColumn, $params, $query) {
+            $table = $relation->getModel()->getTable();
+            $relation->$query("{$table}.{$relColumn}", ...$params);
         });
     }