-2

私は Laravel で既存のプロジェクトに取り組んでおり、現在のデータベース スキーマを変更して現在のデータを保持する必要があります。

たとえば、最初の移行で次のテーブルがあります。

----------------------------------------------
| **Id**        |**Name**  | **PhoneNumber** |
----------------------------------------------
|             1 | John Doe | 111-55-5855     |
----------------------------------------------
|             2 | Jane Doe | 111-55-5521     |
----------------------------------------------

しかし今、これを 2 つのテーブルに分割する必要があります。

----------------------------
| **Id**        |**Name**  |
----------------------------
|             1 | John Doe |
----------------------------
|             2 | Jane Doe |
----------------------------

個人電話

---------------------------------------------------
| **PhoneId**   | **PersonId**  | **PhoneNumber** |
---------------------------------------------------
|             1 |             1 | 111-55-5855     |
---------------------------------------------------
|             2 |             2 | 111-55-5521     |
---------------------------------------------------

したがって、新しい移行では、Person から PhoneNumber を削除し、新しいテーブル PersonPhone を追加します。

PhoneNumber を新しいテーブルにマップし、PhoneId と PersonId を Person テーブルに保持する方法はありますか? または、MySQL スクリプトを作成する唯一の方法ですか?

4

1 に答える 1

0

はい、ピボット テーブルと必要なクラスを作成する必要があります。

私はあなたが始めるためにこれを見つけました: http://laraveldaily.com/pivot-tables-and-many-to-many-relationships/

==

移行を作成し、それを処理するスキーマをセットアップできます。

https://laravel.com/docs/5.3/migrationsまたはhttps://laravel.com/docs/5.1/migrations

https://laravel.com/docs/5.0/schema

于 2016-10-06T04:53:52.330 に答える