瀏覽代碼

SQL类型转NULL

Zhouzhendong 4 年之前
父節點
當前提交
d05b5af8d0
共有 3 個文件被更改,包括 16 次插入6 次删除
  1. 4 2
      app/Http/Controllers/TestController.php
  2. 6 2
      app/Observers/AuthorityObserver.php
  3. 6 2
      app/Observers/MenuObserver.php

+ 4 - 2
app/Http/Controllers/TestController.php

@@ -165,7 +165,8 @@ class TestController extends Controller
             $values = "(";
             foreach ($menu->toArray() as $col=>$val){
                 $columns .= "{$col},";
-                $values .= "'{$val}',";
+                if ($col=='parent_id' && !$val) $values .= "null,";
+                else $values .= "'{$val}',";
             }
             $columns = mb_substr($columns,0,-1);
             $values = mb_substr($values,0,-1);
@@ -181,7 +182,8 @@ class TestController extends Controller
             $values = "(";
             foreach ($authority->toArray() as $col=>$val){
                 $columns .= "{$col},";
-                $values .= "'{$val}',";
+                if ($col=='parent_id' && !$val) $values .= "null,";
+                else $values .= "'{$val}',";
             }
             $columns = mb_substr($columns,0,-1);
             $values = mb_substr($values,0,-1);

+ 6 - 2
app/Observers/AuthorityObserver.php

@@ -20,7 +20,8 @@ class AuthorityObserver
         $values = "(";
         foreach ($authority->toArray() as $col=>$val){
             $columns .= "{$col},";
-            $values .= "'{$val}',";
+            if ($col=='parent_id' && !$val) $values .= "null,";
+            else $values .= "'{$val}',";
         }
         $columns = mb_substr($columns,0,-1);
         $values = mb_substr($values,0,-1);
@@ -38,7 +39,10 @@ class AuthorityObserver
     {
         if (env('APP_ENV')!='production')return;
         $txt = "UPDATE authorities SET ";
-        foreach ($authority->toArray() as $col=>$val)$txt .= "{$col}='{$val}',";
+        foreach ($authority->toArray() as $col=>$val){
+            if ($col=='parent_id' && !$val) $txt .= "{$col}=null,";
+            else $txt .= "{$col}='{$val}',";
+        }
         $txt = mb_substr($txt,0,-1);
         $txt .= " WHERE id = {$authority->id};\r\n";
         $this->write($txt);

+ 6 - 2
app/Observers/MenuObserver.php

@@ -20,7 +20,8 @@ class MenuObserver
         $values = "(";
         foreach ($menu->toArray() as $col=>$val){
             $columns .= "{$col},";
-            $values .= "'{$val}',";
+            if ($col=='parent_id' && !$val) $values .= "null,";
+            else $values .= "'{$val}',";
         }
         $columns = mb_substr($columns,0,-1);
         $values = mb_substr($values,0,-1);
@@ -38,7 +39,10 @@ class MenuObserver
     {
         if (env('APP_ENV')!='production')return;
         $txt = "UPDATE menus SET ";
-        foreach ($menu->toArray() as $col=>$val)$txt .= "{$col}='{$val}',";
+        foreach ($menu->toArray() as $col=>$val){
+            if ($col=='parent_id' && !$val) $txt .= "{$col}=null,";
+            else $txt .= "{$col}='{$val}',";
+        }
         $txt = mb_substr($txt,0,-1);
         $txt .= " WHERE id = {$menu->id};\r\n";
         $this->write($txt);