Symfony2では、エンティティごとにマッピングエンティティを定義する必要があります。アノテーション、YAML、XMLマッピングの3種類のマッピングがあります。
あなたがリンクしているSymfonyのページは、この質問に対する質問に答えています。たとえば、あなたがMapping sectionになった場合、あなたはこの段落が表示されます。Doctrineがこれを行うことができるように
について、あなただけの「メタデータ」を作成する必要があり、または教義を伝えた構成正確にどのようにProductクラスそのプロパティをデータベースにマップする必要があります。このメタデータはアノテーションによってProductクラスの内部を直接YAML、XMLまたは含む、いくつかの異なるフォーマットで指定することができます。
次に、あなただけの少し下に行く場合は、次の3つのマッピングオプションを持つタブ付きペインを参照してください。 YAML]タブをクリックすると、表示されます。
# src/Acme/StoreBundle/Resources/config/doctrine/Product.orm.yml
Acme\StoreBundle\Entity\Product:
type: entity
table: product
id:
id:
type: integer
generator: { strategy: AUTO }
fields:
name:
type: string
length: 100
price:
type: decimal
scale: 2
description:
type: text
YAMLのこの作品は、マッピング情報であり、この場所に位置しています:src/Acme/StoreBundle/Resources/config/doctrine/EntityName.orm.yml
。 EntityName
の部分は、独自のエンティティの名前で変更する必要があります。エンティティクラスがProductの場合はProduct.orm.yml
になります。複数のエンティティを定義するには、複数のファイルを複数定義する必要があります。
次の手順では、データベーススキーマを作成します。お使いの設定が良いですが、あなたはそれぞれのデータベースをドロップして作成するには、次のコマンドを使用しますと仮定:
php console doctrine:database:drop --force
php console doctrine:database:create
次に、スキーマを移入するには、このコマンドを使用する必要があります。
php console doctrine:schema:update --force
ドキュメントをDoctrineため他のマッピング情報や、Doctrine経由でSymfony2でデータベースとのやりとりに必要なものをすべて調べる場所です。
よろしく、
マット
ありがとう!まさに私が探していたもの。私はそのページも見ましたが、何らかの理由であなたが説明したようにすべてを記述していなかったのです。 – KVISH
問題はありませんが、場合によっては説明する方法が異なる場合があります。ハッピーコーディング:) – Matt