【问题标题】:How do i fetch data inside a controller using laravel如何使用 laravel 在控制器内获取数据
【发布时间】:2021-02-11 06:52:05
【问题描述】:

我刚开始学习 laravel。

我不知道如何在控制器中获取数据, 我想在控制器中使用该数据来制定更多规则。

  //Get Data From Database
    $db = DonorDetail::where('donation_id', $paytmResponse['ORDERID'])->get();

    $name     = $db['donor_name'];
    $email_id = $db['email_id'];

DonorDetail 是我连接数据库的模型。

我试过这段代码,但得到未定义的错误。

我正在尝试使用唯一的 donation_id 仅选择 1 行,并使用我的控制器内其他数据列的数据。

【问题讨论】:

  • 您看到了什么确切的错误?
  • 未定义索引:donor_name
  • get 将返回一个集合,而不是单个模型

标签: php sql laravel orm


【解决方案1】:

您可以使用 dd() 查看数据。

dd($db);

但是,如果您只想获取第一个匹配的数据,请使用以下

$db = DonorDetail::where('donation_id', $paytmResponse['ORDERID'])->first();
$name     = $db->donor_name;
$email_id = $db->email_id;

【讨论】:

    【解决方案2】:

    get 返回一个集合。您应该使用 first 从查询中获取第一个结果:

    DonorDetail::where('donation_id', $paytmResponse['ORDERID'])->first();
    

    如果没有找到结果,会返回null,所以你也要注意。

    您只向我们提供了一小部分代码,但您似乎正在以非 Laravel 的方式做很多事情。这是很自然的,因为正如您所提到的,您只是从 Laravel 开始。我给你的建议是查看 Laracast 的免费“Laravel From Scratch”课程: https://laracasts.com/series/laravel-6-from-scratch

    这是迄今为止开发人员在 Laravel 中迈出第一步的最佳资源(它也为有经验的开发人员提供了很好的资源)。

    祝你好运!

    【讨论】:

      猜你喜欢
      • 2021-06-20
      • 1970-01-01
      • 2017-05-02
      • 2019-11-06
      • 2021-10-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-25
      相关资源
      最近更新 更多