think-orm

webman/think-orm é um componente de banco de dados desenvolvido com base em top-think/think-orm, que suporta pool de conexões, suportando ambientes com e sem corrotinas.

Atenção
Este manual é para a versão v2 do webman. Se você estiver usando a versão v1 do webman, consulte o manual da versão v1

Instalação do think-orm

composer require -W webman/think-orm

Após a instalação, é necessário reiniciar (reload não é eficaz).

Arquivo de configuração

Modifique o arquivo de configuração config/think-orm.php conforme a necessidade.

Endereço da documentação

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

Uso

<?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);
    }
}

Criando Modelos

Os modelos do think-orm estendem support\think\Model, semelhante ao exemplo abaixo:

<?php
namespace app\model;

use support\think\Model;

class User extends Model
{
    /**
     * A tabela associada ao modelo.
     *
     * @var string
     */
    protected $table = 'user';

    /**
     * A chave primária associada à tabela.
     *
     * @var string
     */
    protected $pk = 'id';

}

Você também pode usar o seguinte comando para criar um modelo baseado em think-orm:

php webman make:model NomeDaTabela

Dica
Este comando requer a instalação de webman/console, o comando de instalação é composer require webman/console ^1.2.13

Atenção
O comando make:model, se detectar que o projeto principal está usando illuminate/database, criará um arquivo de modelo baseado em illuminate/database, em vez de think-orm. Nesse caso, você pode adicionar um parâmetro tp para forçar a geração do modelo think-orm, com um comando semelhante a php webman make:model NomeDaTabela tp (se não funcionar, atualize webman/console).