当前位置: 首页 > 知识库问答 >
问题:

连接到其他数据库驱动程序时无法删除对象-Laravel

百里杰
2023-03-14

我有一张桌子

当我删除的时候,我一直得到

注意:我连接到一个特定的数据库驱动程序babies,其表名为babysettings

我不知道为什么我不能删除这个:

public function destroy($id)
{

    $inputs  = Request::all();
    $baby    = DB::connection('babies')->table("babySettings")->find($id);
    $oldBaby = $baby;

    $deleteLock = [1,2,3];


    if(in_array((int)$id,$deleteLock)) {
        return Redirect::to('/baby') ->with('error', 'F* off');
    }

    if($baby){

        $logs   = DB::connection('babies')->table("babyLogs")->where('babyId',$id)->get();
        
        if(count($logs) > 0){
            foreach ($logs as $log) {
                $log->delete(); 
            }

        }

        $baby->delete();    

    } 

    return Redirect::to($_SERVER['HTTP_REFERER']) ->with('success', $oldBaby->babyName . ' + (' . count($logs) . ') removed!');

}

我做错什么了吗?

如果我把$baby挖出来,我好像就会得到它

{#501 ▼
  +"id": 93
  +"status": 0
  +"uuid": "28753a43-2c30-4ce0-b4db-b177a8d6ae3c"
  +"name": "John Doe"
  +"email": "jdoe@gg.com"
  +"password": "$2y$10$oIq.SwurET3JBLuXgSJwLOUAZADQTjOTcnPKijV1EmUNBnsreoLvm"
  +"phone": ""
  +"address": ""
  +"babyName": "tyty"
  +"babyDob": "2021-04-18"
  +"verifyCode": "EnQoq8cheWGL4a37wyhtaK6fevJRZGLHoCyZ&t=1618743364"
  +"babyProfilePath": "https://i.imgur.com/DF8G7HS.png"
  +"babyBgPath": null
  +"adminCode": "x895Gq"
  +"readOnlyCode": "Z1EVdd"
  +"created_at": "2021-04-18 07:56:04"
  +"updated_at": "2021-04-18 07:56:04"
  +"feedingInterval": 2
  +"displayMode": 2
  +"imgUrAlbumId": null
}

共有1个答案

隗昀
2023-03-14

当您使用db时,它返回一个sstdclass对象的集合。

delete函数对stdClass对象不可用。可以使用DB删除记录:

$logs = DB::connection('babies')->table("babyLogs")->where('babyId',$id)->get();

foreach ($logs as $log) {
    DB::connection('babies')->table('babyLogs')->where('id', $log->id)->delete();
}

或者,您可以通过一个查询删除所有内容:

DB::connection('babies')->table("babyLogs")->where('babyId',$id)->delete();

baby也是stdclass,因此,您必须使用query builder或Elecoquent删除它:

DB::connection('babies')->table("babySettings")->where('id', $id)->delete();
 类似资料:
  • 我想从Linux实例使用TLS1.2连接到我的数据库实例,但我无法这样做。我使用以下配置: < Li > Java JDK:Amazon corretto open JDK版本:" 1.8.0_252" < li>JDBC驱动程序:Microsoft SQL server MSSQL-JDBC:8 . 2 . 2 . JRE 8 < li >连接字符串:JDBC:SQL server://[我的数

  • 我无法将驱动程序/对象传递到下一个类/页,并且在第一个/开始类中具有相同的NullPointerException。 PageObject类-SearchResultsPage: PageObject类主页: 测试等级: 我有两个问题: 1.当我运行测试检查IsHomePage()-FAILS(NullPointerExcema)和ChangeMoney cy()PASS。我不知道为什么第一次测试

  • 我正在制作这个基于控制台的游戏。 但我不明白这一点,也不明白为什么这样做是错误的。 所以基本上我有10个房间,所以一个房间有以下东西: -房间号码 -hashmap,其中包含一个Room作为值和一个String作为键 现在的问题是,一个房间可以从4个方向北、东、南、西退出,所以这是哈希图中的字符串/键。 它也可以有2个出口或1或3个。 所以在那个哈希图中,我将方向保存为键和值另一个房间对象,这样我

  • 我下面的文档连接PHP到火鸟数据库。我在php.ini激活了分机 我在xampp上重新启动了apache,并复制粘贴了文档的代码以进行测试。当我运行代码时,我发现 我错过了什么? 环境: 使用PHP7.4的XAMPP 视窗10

  • 应用程序属性 应用程序主程序 错误 启动ApplicationContext时出错。若要显示条件报告,请在启用“调试”的情况下重新运行应用程序。2019-03-03 17:42:47.183错误10344-[restartedMain]O.S.Boot.SpringApplication :应用程序运行失败 几乎每个站点/YouTube我都试过了,但问题还在。

  • 问题内容: 我已经将我的应用程序设置为通过UCanAccess连接到Access数据库,但是无法连接到共享驱动器上的数据库。请参阅下面的示例。 当我将共享驱动器上的文件夹映射到某个字母(例如P :)时,这很有趣。 有可能解决这个问题吗?我的用户对该文件夹具有读/写权限,但是我不想在每台计算机上映射驱动器。谢谢 问题答案: 您只是在连接URL中没有足够的正斜杠来表示UNC路径。如前所述,对于本地连接