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

在Laravel中不带循环从数据库取值

巫经义
2023-03-14
$shipping = Preferences::where('preferences_id', '=', 1)->get();
$shipping->option_one
$shipping->option_two

错误显然是

未定义属性:Illuminate\database\eloquent\collection::$preferences_option_one

定义属性:Illuminate\database\eloquent\collection::$preferences_option_two

Array
(
    [0] => stdClass Object
        (
            [preferences_id] => 1
            [preferences_option_one] => Priority Mail
            [preferences_option_two] => Express Mail
        )

)
1

/var/www/html/vendor/laravel/framework/src/Illuminate/exception/handler.php第281行

protected function displayException($exception)
{
    $displayer = $this->debug ? $this->debugDisplayer : $this->plainDisplayer;

    return $displayer->display($exception);   <--- line 281
}

/var/www/html/vendor/laravel/framework/src/Illuminate/exception/whoopsdisplayer.php:43

public function display(Exception $exception) <-- line 43
{
    $status = $exception instanceof HttpExceptionInterface ? $exception->getStatusCode() : 500;

    $headers = $exception instanceof HttpExceptionInterface ? $exception->getHeaders() : array();

    return new Response($this->whoops->handleException($exception), $status, $headers);
}

共有1个答案

鲍向笛
2023-03-14

当从数据库中获取一行时,不应该在最后使用get()方法。必须在查询结束时使用first()方法。所以只要改变

From 
$shipping = Preferences::where('preferences_id', '=', 1)->get();
To 
$shipping = Preferences::where('preferences_id', '=', 1)->first();
or 
$shipping = Preferences::whereIn('preferences_id', 1)->first();

现在可以使用

{{ $shipping->option_one }}
{{ $shipping->option_two }} 

希望能有所帮助。

 类似资料:
  • 我想从数据库中获取数据(经度/纬度),并使用Ajax调用将其返回到Google地图上绘制多个标记。 下面是包含ajax的javascript: 在ajax设置中,当我输入“dataType:json”时,函数错误被执行。输出为警报“加载数据时出错”。 这是我的控制器: 我尝试console.log(响应),它显示整个javascript代码。 当前没有“数据类型:'json'”的错误显示“未捕获类

  • CORS策略阻止从来源'http://laravelvue2.test'访问位于'http://localhost:8000/items'的XMLHttpRequest:请求的资源上没有'Access-Control-Allow-Origin'标头。

  • 我在数据库中有数据:Firebase中的数据库 我想读取所有子项(Belgia、Czechy、Polska…),并将其显示在文本字段中,但单击按钮后(我不会更改数据库中的数据)。按钮分配了以下功能: 在我写代码之前: 不幸的是,当我按下按钮时,什么也没有发生。 我很感激你的帮助问候,马辛

  • 问题内容: 我有2种情况,我要在codeigniter中提取同一表的全部数据和行总数,我想知道那是一种方法,可以从中获取行总数,整个数据和3个最新插入的记录通过一个代码在同一张桌子上 两种情况的控制器代码如下(尽管我分别使用不同的参数将其应用于每种情况) 1)从codeigniter中的表中获取全部数据 型号代码 查看代码 2)在Codeigniter中从表中获取行数 查看代码 问题答案: 您只能

  • 问题内容: print_r($ samplearr)为包含3个项目的数组打印以下内容: 我想将它们放到HTML表中,所以我正在做一个foreach,但是没有达到我的期望: 正在返回: 这将是我想要的第一个输出: 要获得4722,我需要使用什么功能代替key($ item)? 问题答案: 尝试这个:

  • 问题内容: 我想知道是否有人可以帮助我创建一个while循环来遍历几个数据库,以便从两列的一个表中获取数据。这是我到目前为止所做的。什么都行不通,因为我不知道如何针对我从每个数据库查询的表来使select语句在每个数据库中正常工作(dbo.tbldoc) 问题答案: 我会考虑使用sp_MSForEachDB,这要容易得多… 编辑: