はじめに
Sutando をインストールし、最初のモデルを定義してクエリを実行します。モデル、レコードの取得、挿入、更新、削除を一通り見ていきます。
Sutando とは
Sutando は、データベースとのやり取りを楽しくするオブジェクトリレーショナルマッパー(ORM)です。Sutando を使用すると、各データベーステーブルには対応する「モデル」があり、そのテーブルとのやり取りに使用されます。Sutando のモデルでは、データベーステーブルからレコードを取得できるだけでなく、テーブルへのレコードの挿入、更新、削除も行えます。
Sutando は Eloquent から大きな影響を受けており、その動作はほとんど同じです。
「sutando」という名前は、日本の漫画『ジョジョの奇妙な冒険』に登場する概念であるスタンドに由来します。スタンドがキャラクターに力を与えるように、Sutando が皆さんのアプリケーションに強力な機能と柔軟性をもたらすことを願っています。
クイックスタート
Sutando と mysql データベースライブラリをインストールします
$ npm install sutando mysql2 --save$ yarn add sutando mysql2$ pnpm add sutando mysql2SQL クエリを実行する最も簡単な方法は、データベースクエリビルダを使用することです。JavaScript のメソッドを使って、シンプルな SQL クエリから複雑な SQL クエリまで構築できます。
次の例では、users テーブルからすべてのレコードを取得します。
import { sutando, Model } from 'sutando';
// Add SQL Connection Info
sutando.addConnection({
client: 'mysql2',
connection: {
host : '127.0.0.1',
port : 3306,
user : 'root',
password : '',
database : 'test'
},
});
const db = sutando.connection();
// Using The Query Builder
const users = await sutando.table('users').where('votes', '>', 100).get();
// or
const users = await db.table('users').where('votes', '>', 100).get();
// Using The Schema Builder
await sutando.schema().createTable('users', table => {
table.increments('id').primary();
table.integer('votes');
table.timestamps();
});
// Using The ORM
class User extends Model {}
const users = await User.query().where('votes', '>', 100).get();