0

Dingo API で Eloquent Query Builder を使用する方法を知っている人はいますか?

箱から出してEloquentを使用すると、うまく機能しています:

use Illuminate\Database\Capsule\Manager as Capsule;

$capsule = new Capsule;
$capsule->addConnection([ ... ]);

$capsule->setAsGlobal(); // Make this Capsule instance available globally via static methods
$capsule->bootEloquent(); // Setup the Eloquent ORM

そして、私のモデルでは、クエリ ビルダーを使用できます。

use Illuminate\Database\Capsule\Manager as Capsule;

Capsule::table('users')->where(...)->select(Capsule::raw('AVG(rating) AS avg_rating'))->first()->avg_rating;

Eloquent を使用して同じ結果が得られることはわかっていますが、簡単なクエリでしか機能しません。

User::where(..)->selectRaw(...)->first()->avg_rating;

Dingo API を使用して、Query Builder を使用したい場合、次のエラー メッセージが表示されます。

Fatal error: Call to a member function connection() on null

app/bootstrap.phpファイルで呼び出したことのないsetAsGlobalメソッドに関連していると思います。私はこれしか持っていません:

...
$app = new Laravel\Lumen\Application(
    realpath(__DIR__.'/../')
);

// $app->withFacades();

$app->withEloquent();
...
4

2 に答える 2

0

照らす/データベースを必要とするルーメンを使用していると思います: https://github.com/laravel/lumen-framework/blob/5.2/composer.json

ただし、安定モードの Dingo API は、illuminate/database を必要としません。それが理由でしょうか?必須パッケージは自動的に「サブ」必須ではありませんか?

于 2016-02-26T14:40:31.573 に答える