2017-08-12 3 views
1

ブックモデルLaravel:雄弁モデル::すべての()は何も

namespace App; 
use Illuminate\Database\Eloquent\Model; 
class Books extends Model{ 
// 
    public $table = 'books'; 
} 

私のコントローラ機能を返しません。

namespace App\Http\Controllers; 
use Illuminate\Http\Request; 
use App\Books; 

class HomeController extends Controller 
    { 
      public function addbooks() 
      { 
      $book = Books::all(); 
      print_r ($book); 
      } 
} 

だから、機能addbooksは、何も返しません。 sqlite DBを使用しています。 添付されているのは私のSQL結果のスクリーンショットです。 select result

php artisan tinker結果です。

enter image description here

+0

'php artisan tinker'では' App \ Books :: query() - > toSql() 'を実行して質問に出力を追加してください。また、 'print_r'の代わりに' dd($ book) 'を試してください。' print_r'の出力が表示されない可能性があります。 – ceejayoz

+0

@ceejayoz、私は、私の質問を編集しました。plsは見ていますが、dd($ book)もnullを返します。 –

+0

この時点で私の疑惑はあなたが別のデータベースにアクセスしていることです。 'config( 'database')'をダンプして、正しいSQLite DBにアクセスしていることを確認できますか? – ceejayoz

答えて

0

Laravelのコンベンションは、デフォルトでは、複数のテーブル名です。しかし、クラス名(モデル用)を書くときは、それは単数でなければなりません。あなたのクラス名として「ブック」を試してみてください。

+0

試してみて、同じ結果 'Illuminate \ Database \ Eloquent \ Collectionオブジェクト([items:protected] => Array())'を試してみてください。あなたのモデルの中に '$ table'を指定しても、あなたが言うことはできますか? –