Files
upstream-twenty/packages/twenty-docs/l/ja/user-guide/data-model/overview.mdx
upstream-mirror e7da97194a
Some checks failed
App Prod-Parity E2E Dispatch / dispatch (push) Failing after 10s
CD Storybook UI / build (push) Failing after 3m25s
CD Storybook UI / dispatch (push) Has been skipped
CD deploy main / website-changed-files (push) Successful in 18m8s
CI Agent Skills / changed-files-check (push) Successful in 18m9s
CI Create App E2E minimal / changed-files-check (push) Successful in 24s
CI Create App / changed-files-check (push) Successful in 26s
CI Docs / changed-files-check (push) Successful in 26s
CI Emails / changed-files-check (push) Successful in 28s
CI Example App Hello World / changed-files-check (push) Successful in 23s
CI Front / changed-files-check (push) Has been skipped
CI Example App Postcard / changed-files-check (push) Successful in 27s
CI UI / changed-files-check (push) Has been skipped
CI Utils Test / changed-files-check (push) Successful in 45s
CI Twenty Apps / discover (push) Successful in 1m3s
CD deploy main / deploy-main (push) Failing after 3s
CI Agent Skills / agent-skills-validate (push) Has been skipped
CI Create App / create-app-test (lint) (push) Has been skipped
CI Emails / emails-test (push) Has been skipped
CI Front / front-task (lingui:compile) (push) Has been skipped
CI Front / front-task (lint) (push) Has been skipped
CI Example App Postcard / example-app-postcard (push) Has been skipped
CI UI / ui-task (lint) (push) Has been skipped
CI UI / ui-task (pack-size) (push) Has been skipped
CI UI / ui-task (size) (push) Has been skipped
CI UI / ui-task (test) (push) Has been skipped
CI UI / ui-task (typecheck) (push) Has been skipped
CI Utils Test / utils-test (push) Has been skipped
CI Twenty Apps / ${{ matrix.app.name }} (push) Has been skipped
CI Emails / ci-emails-status-check (push) Successful in 2s
CI Example App Hello World / ci-example-app-hello-world-status-check (push) Successful in 2s
CI Example App Postcard / ci-example-app-postcard-status-check (push) Successful in 3s
CI UI / ui-sb-test (push) Has been skipped
CI Utils Test / ci-utils-test-status-check (push) Successful in 2s
CI Twenty Apps / ci-twenty-apps-status-check (push) Successful in 2s
CI UI / ci-ui-status-check (push) Successful in 2s
CI Desktop / desktop (push) Failing after 1m8s
Push docs to Crowdin / Push documentation to Crowdin (push) Failing after 55s
Push translations to Crowdin / Extract and upload translations (push) Failing after 5s
Push website translations to Crowdin / Extract and upload website translations (push) Failing after 5s
CI Create App / create-app-test (test) (push) Has been skipped
CI Create App / create-app-test (typecheck) (push) Has been skipped
CI Docs / docs-lint (push) Has been skipped
CI Example App Hello World / example-app-hello-world (push) Has been skipped
CI Front / front-task (lingui:extract) (push) Has been skipped
CI Front / front-task (test) (push) Has been skipped
CI Front / front-task (typecheck) (push) Has been skipped
CI UI / ui-sb-build (push) Failing after 1m32s
CI Twenty Apps / ${{ matrix.app.name }} (${{ matrix.server-source }}) (push) Has been skipped
CI Agent Skills / agent-skills-publish (push) Has been skipped
CI Create App / ci-create-app-status-check (push) Successful in 2s
CI Agent Skills / agent-skills-remote-source (push) Has been skipped
CI Create App E2E minimal / create-app-e2e-minimal (push) Has been cancelled
CI E2E Main / e2e-test (push) Has been cancelled
CI Front / front-sb-build (push) Has been cancelled
CI Front / front-build (push) Has been cancelled
CI Create App E2E minimal / ci-create-app-e2e-minimal-status-check (push) Has been cancelled
CI E2E Main / ci-e2e-main-status-check (push) Has been cancelled
CI E2E Main / notify-main-ci-failure (push) Has been cancelled
CI E2E Main / qa-scout-comment (push) Has been cancelled
CI Front / front-sb-test (push) Has been cancelled
CI Front / front-sb-screenshots (push) Has been cancelled
CI Front / ci-front-status-check (push) Has been cancelled
DPA Sub-Processor Sync / sync-subprocessors (push) Failing after 3s
AI Catalog Sync / sync-catalog (push) Failing after 2s
snapshot of https://github.com/twentyhq/twenty.git (main, 2026-09-17; blobs > 131072B omitted)
2026-09-17 23:28:13 +05:00

178 lines
10 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: データモデル
description: データモデルとは何か、ビジネスに適したデータモデルの設計方法を学びましょう。
---
## データモデルとは何ですか?
データモデルは、CRMにおける情報がどのように整理されるかを定義する構造です。 それは、どのオブジェクトが存在するか(会社、人、機会など)、それらが持つプロパティ(フィールド)が何か、そしてそれらがどのように関連しているかを決定します。 それを顧客データの地図として考えることができます。 それは、どのオブジェクトが存在するか(会社、人、機会など)、それらが持つプロパティ(フィールド)が何か、そしてそれらがどのように関連しているかを決定します。 それを顧客データの地図として考えることができます。 それは、どのオブジェクトが存在するか(会社、人、機会など)、それらが持つプロパティ(フィールド)が何か、そしてそれらがどのように関連しているかを決定します。 それを顧客データの地図として考えることができます。 それは、どのオブジェクトが存在するか(会社、人、機会など)、それらが持つプロパティ(フィールド)が何か、そしてそれらがどのように関連しているかを決定します。 それを顧客データの地図として考えることができます。 それは、どのオブジェクトが存在するか(会社、人、機会など)、それらが持つプロパティ(フィールド)が何か、そしてそれらがどのように関連しているかを決定します。 それを顧客データの地図として考えることができます。 それは、どのオブジェクトが存在するか(会社、人、機会など)、それらが持つプロパティ(フィールド)が何か、そしてそれらがどのように関連しているかを決定します。 それを顧客データの地図として考えることができます。 顧客データの**設計図**だと考えてください—一度設計したら、実際のデータで埋めていきます。
## 主要な概念
### オブジェクト
**オブジェクト**は、CRMにおけるデータの主要なカテゴリです。 各オブジェクトは、追跡したい対象の種類を表します。
Twenty には標準オブジェクトがあります:
* **People** — 個人(連絡先、リード、パートナー)
* **Companies** — 組織
* **Opportunities** — 商談または売上
* **メモ** — レコードに添付されているノート
* **Tasks** — レコードに関連付けられたToDo
あなたのビジネス固有のあらゆるもの向けに**カスタムオブジェクト**を作成することもできます(例:Projects、Subscriptions、Events)。
### フィールド
**フィールド**は、各オブジェクトを記述するプロパティ(属性)です。 実際の情報を保存します。
例えば、**People** オブジェクトには次のようなフィールドがあります:
* 名前
* メール
* 電話
* 職種
* Company(Companies オブジェクトへのリレーション)
フィールドにはさまざまな**タイプ**があります: テキスト、数値、日付、セレクト、マルチセレクト、リレーションなど。 任意のオブジェクトにカスタムフィールドを追加できます。
### レコード
**レコード**は、オブジェクト内の個別のエントリであり、あなたが作成・管理する実データです。
例えば:
* "John Smith" は People オブジェクトの**レコード**です
* "Acme Corp" は Companies オブジェクトの**レコード**です
**例え:**
| データモデルの概念 | 実世界のたとえ |
| ---------- | ------------------- |
| **オブジェクト** | 本のセクション(カテゴリ) |
| **フィールド** | スプレッドシートの列(プロパティ) |
| **レコード** | スプレッドシートの行(実際のエントリ) |
データモデル(オブジェクト + フィールド)は一度設計し、その構造の中で多数のレコードを作成します。
## データモデルをカスタマイズする理由
すべてのビジネスは違った方法で動作します。 データモデルをカスタマイズすれば、硬直的なシステムに自分のプロセスを押し込めるのではなく、Twenty を**あなたの**プロセスに合わせて形作れます。
Twenty は高い柔軟性を提供します:
* 必要なだけカスタムオブジェクトを作成できます
* 無制限にカスタムフィールドを追加できます
* カスタマイズしても価格は変わりません
## データモデルを設計するためのヒント
### 1. コアとなるオブジェクトから始める
取り扱う主要な概念を特定しましょう。 Twenty にはすでに次のものが用意されています:
* **People** — 連絡先
* **Companies** — 取引先
* **Opportunities** — 商談
他に何が必要か考えてみましょう:
* Stripe には `Subscriptions` オブジェクトが必要になるでしょう
* Airbnb には `Trips` オブジェクトが必要になるでしょう
* アクセラレーターには `Batches` オブジェクトが必要になるでしょう
### 2. バリエーションには新規オブジェクトではなくフィールドを使う
既存オブジェクトの単なる特性であれば、**フィールド**にしましょう。
**フィールドを使うケース:**
* カテゴリやラベル(例:Companies の `Industry`)
* ステータス値(例:Opportunities の `Stage`)
* 属性やプロパティ
### 3. 独立して成立する場合はオブジェクトを作成する
その概念に固有のライフサイクル、プロパティ、またはリレーションシップがあるなら、オブジェクトにする価値があります。
**オブジェクトを作成する対象:**
* **Projects** — 期限、所有者、タスクを持つもの
* **Subscriptions** — 会社、製品、請求書を結びつけるもの
* **Events** — 参加者とフォローアップアクションを伴うもの
これらは単一のフィールドを超えており、独自のデータと関係を有しています。
### 4. レコード数が不定の場合はオブジェクトを作成する
関連付け回数が複数で、どれだけになるかわからない場合は、オブジェクトを使用します。
**悪いアプローチ:**
`Product 1`、`Product 2`、`Product 3` のようなフィールドを作成する...
**良いアプローチ:**
`Products` オブジェクトを作成してレコードに関連付ける。 こうすることで、製品が1つでも100でも、モデルを変更せずに対応できます。
### 5. まずはシンプルに
まずはフィールドから始めましょう。 限界を感じたときにのみ新しいオブジェクトへ移行しましょう:
* 1つのオブジェクトにフィールドが多すぎる
* 別々にすべきレコードが繰り返されている
* リレーションがうまく収まらない
## 人、会社、機会に関する特別な注意事項
<Warning>
**メールとカレンダーの同期は、人、会社、機会でのみ機能します。**
メールボックス/カレンダーから同期済みのメールやミーティングにアクセスできるのは、これらのオブジェクトだけです。 可能な限りこれらを使用することを推奨します。
</Warning>
**ベストプラクティス:**
* 「人」のカテゴリが必要な場合は、新しいオブジェクトではなくフィールドを使用してください
* 例: 別々のオブジェクトを作成するのではなく、値として「見込み客」と「パートナー」を持つ `Person Type` フィールドを使用します
* フィルター用に別々の**ビュー**を作成します: 1つはパートナーを表示し、もう1つは見込み客を表示します
**すべてのレコードに当てはまらないフィールドがあっても問題ありません。** 例えば、`Person Type = Partner` の場合にのみ適用される、「人」オブジェクトの `Referral Link` フィールド。 関連しないビューではこのフィールドを非表示にします。
## 選択を導くための質問
自問してください:
<Check>これは、すでに持っているものの単なるプロパティですか、それとも独自のプロパティが必要ですか?</Check>
<Check>各レコードで、その数を事前に知らずに複数を追跡する必要がありますか?</Check>
<Check>この概念は、1つだけでなく複数の異なるオブジェクトに関連しますか?</Check>
<Check>それは独自のライフサイクル(ステージ、開始/終了日)を持ちますか?</Check>
1つ以上に "はい" と答えるなら、新しいオブジェクトにする時期かもしれません。
## データモデルへのアクセス
1. 左サイドバーの**設定**に移動します
2. **データモデル**をクリックします
3. すべてのオブジェクト(標準およびカスタム)を表示します
4. 任意のオブジェクトをクリックして、そのフィールドを表示・編集します
<Note>
**設定にデータモデルが見当たりませんか?**
データモデルへのアクセスは通常、管理者に制限されています。 アクセスが必要な場合は、ワークスペース管理者に連絡してください。
</Note>
## 次のステップ
データモデルの計画が完了したら:
* [カスタムオブジェクトの作成方法](/l/ja/user-guide/data-model/how-tos/create-custom-objects)
* [カスタムフィールドの作成方法](/l/ja/user-guide/data-model/how-tos/create-custom-fields)
* [リレーションフィールドの作成方法](/l/ja/user-guide/data-model/how-tos/create-relation-fields)
## ヘルプが必要ですか?
<Tip>
データモデルの設計でサポートが必要ですか? [Find a Certified Twenty partner](https://twenty.com/partners/list?categories=SOLUTIONING\&ref=docs-data-model) は、オブジェクト、フィールド、リレーションシップを設計および構築します。
</Tip>