think-orm

webman/think-ormtop-think/think-orm을 기반으로 개발된 데이터베이스 컴포넌트로, 연결 풀을 지원하며, 코루틴 및 비코루틴 환경에서도 작동합니다.

주의
현재 매뉴얼은 webman v2 버전입니다. 만약 webman v1 버전을 사용하고 있다면 v1 버전 매뉴얼을 참조하시기 바랍니다.

think-orm 설치

composer require -W webman/think-orm

설치 후에는 반드시 restart를 해야 합니다 (reload는 효과가 없습니다).

구성 파일

실제 상황에 맞게 구성 파일 config/think-orm.php를 수정합니다.

문서 주소

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

사용 방법

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

모델 생성

think-orm 모델은 support\think\Model을 상속받으며, 다음과 유사합니다.

<?php
namespace app\model;

use support\think\Model;

class User extends Model
{
    /**
     * 모델과 연관된 테이블.
     *
     * @var string
     */
    protected $table = 'user';

    /**
     * 테이블과 연관된 기본 키.
     *
     * @var string
     */
    protected $pk = 'id';

}

다음 명령어를 사용하여 think-orm 기반의 모델을 생성할 수도 있습니다.

php webman make:model 테이블명

提示
이 명령은 webman/console이 설치되어 있어야 하며, 설치 명령은 composer require webman/console ^1.2.13입니다.

주의
make:model 명령이 illuminate/database를 사용하고 있는 주 프로젝트를 감지하면, think-orm이 아닌 illuminate/database 기반의 모델 파일을 생성합니다. 이때, tp라는 추가 매개변수를 통해 think-orm 모델 생성을 강제로 수행할 수 있으며, 명령은 php webman make:model 테이블명 tp와 같습니다 (효과가 없을 경우 webman/console을 업그레이드하십시오).