think-orm

webman/think-orm ist eine auf top-think/think-orm entwickelte Datenbankkomponente, die Verbindungspools unterstützt und sowohl in Coroutine- als auch in Nicht-Coroutine-Umgebungen verwendet werden kann.

Achtung
Dieses Handbuch bezieht sich auf die webman v2-Version. Wenn Sie die webman v1-Version verwenden, schauen Sie bitte in das Handbuch für die v1-Version.

Installation von think-orm

composer require -W webman/think-orm

Nach der Installation müssen Sie restart ausführen (reload hat keine Wirkung).

Konfigurationsdatei

Passen Sie die Konfigurationsdatei config/think-orm.php an die Gegebenheiten an.

Dokumentationsadresse

https://www.kancloud.cn/manual/think-orm

Nutzung

<?php
namespace app\controller;

use support\Request;
use support\think\Db;

class FooController
{
    public function get(Request $request)
    {
        $user = Db::table('user')->where('uid', '>', 1)->find();
        return json($user);
    }
}

Modell erstellen

Das think-orm Modell erbt von support\think\Model, ähnlich wie folgt

<?php
namespace app\model;

use support\think\Model;

class User extends Model
{
    /**
     * Die Tabelle, die mit dem Modell verbunden ist.
     *
     * @var string
     */
    protected $table = 'user';

    /**
     * Der Primärschlüssel, der mit der Tabelle verbunden ist.
     *
     * @var string
     */
    protected $pk = 'id';

}

Sie können auch den folgenden Befehl verwenden, um ein auf think-orm basierendes Modell zu erstellen

php webman make:model Tabellenname

Hinweis
Dieser Befehl erfordert die Installation von webman/console. Der Installationsbefehl lautet composer require webman/console ^1.2.13.

Achtung
Wenn der make:model-Befehl erkennt, dass das Hauptprojekt illuminate/database verwendet, wird eine Modell-Datei auf Basis von illuminate/database erstellt und nicht auf Basis von think-orm. In diesem Fall können Sie mit einem zusätzlichen Parameter tp die erzwungene Erstellung eines think-orm Modells durchführen, der Befehl ähnelt php webman make:model Tabellenname tp (wenn dies nicht funktioniert, aktualisieren Sie bitte webman/console).