简体   繁体   中英

Getting no result from table , while fetching data using laravel model

I am trying to execute simple CRUD operation using laravel. but it gives an error code 500, when I try to fetch data from table either by laravel framework as well as with plain PHP.

Here is my controller class.

    <?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\BookModel;
use \DB;

class AdminController extends Controller
{
    function getItems()
    {
        $data = DB::select('select * from book');
        $data = BookModel::all();
        echo($data);
        return compact('data');
    }
}

axiom, which is been used. ---> " https://unpkg.com/axios/dist/axios.min.js "

Model Class:

    <?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class BookModel extends Model {
    protected $table = "book";
    public $timestamps = false;
}

It is returning no result from the table.

It worked after I changed my controller to

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\BookModel;
use \DB;

class AdminController extends Controller
{
    function getItems()
    {
        $data = BookModel::all();
        return $data;
    }
}

But it was giving null result when I was doing something like below

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\BookModel;
use \DB;

class AdminController extends Controller
{
    function getItems()
    {
        $data = BookModel::all();
        return view('admin')->withTasks($data);
    }
}

Can someone explain why it was not working earlier?

Anyways, Thanks everyone for your help.

Cheeeeeeeeerrsssss!!!!!!!

You need to add response() to return data without view . Like below the code returns the JSON data from your BookModel that sometimes we need through the ajax request like axios .

class AdminController extends Controller
{
    function getItems()
    {
        $data = BookModel::all();
        return response()->toJson($data);
    }
}

With view you can do the following:

class AdminController extends Controller
{
    function getItems()
    {
        $data = BookModel::all();
        return view('admin', compact('data'));
    }
}

Where you can access the BookModel data through $data variable in your admin.blade.php

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM