Laravel ::get() returns 模型

Laravel ::get() returns models

我对 laravel 的问题是我想显示的任何数据 returns 模型而不是数据。

我迁移了我的数据库 4 次只是为了检查它是否不是数据库内部的错误,同时修补 returns 模型。

我的控制器

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Models\Product;

class HomeController extends Controller
{
    /**
     * Create a new controller instance.
     *
     * @return void
     */
    public function __construct()
    {
        $this->middleware('auth');
    }

    /**
     * Show the application dashboard.
     *
     * @return \Illuminate\Contracts\Support\Renderable
     */
    public function index()
    {
        $products = Product::get();
        dd($products);
        return view('home');
    }
}

我的模型

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

class Product extends Model
{
    use HasFactory;
    /**
     * The attributes that are mass assignable.
     *
     * @var string[]
     */
    protected $fillable = [
        'Product_name',
        'Product_image',
        'Product_price',
        'Store_ID'
    ];
}

我的刀刃

@extends('layouts.app')

@section('content')
<div class="container">
    <div class="row justify-content-center">
        <div class="col-md-8">
            <div class="card">
                <div class="card-header">{{ __('Dashboard') }}</div>

                <div class="card-body">
                    @if (session('status'))
                        <div class="alert alert-success" role="alert">
                            {{ session('status') }}
                        </div>
                    @endif

                    {{ __('You are logged in!') }}
                </div>
            </div>
        </div>
    </div>
</div>
@endsection

Product::get(); returns 以下:

我找遍了所有地方,但不知何故找不到任何有相同错误的人。我做错了什么?

Collection 的返回是检索多个模型的预期行为。只需在 blade 文件中循环遍历它们,就像它是一个数组一样:

public function index()
{
    $products = Product::get();
    
    return view('home', compact('products'));
}
@extends('layouts.app')

@section('content')
    <div class="container">
        <ul>
            @foreach($products as $product)
                <li>{{ $product->Product_name }} - {{ $product->Product_price }}</li>
            @endforeach
        </ul>
    </div>
@endsection

当您使用 dd() 时,您会看到实际模型 class。这些模型的设计使您可以直接从它们访问行数据,例如$product->Product_name .