3 Таблица Миграция Laravel нужна консультация

#laravel #migration #relationship

Вопрос:

Я думаю, что делаю это правильно. У меня есть таблица пользователей, профиля и приложений. Ниже приведены миграции. Я думаю, что правильно связываю их при миграции, но мне нужен совет, чтобы убедиться. У 1 пользователя может быть 1 профиль, но много приложений.

Таблица Пользователей

 public function up()  {  Schema::create('users', function (Blueprint $table) {  $table-gt;id();  $table-gt;string('name');  $table-gt;string('email')-gt;unique();  $table-gt;timestamp('email_verified_at')-gt;nullable();  $table-gt;string('password');  $table-gt;rememberToken();  $table-gt;timestamps();  });  }      

Таблица Профилей

 public function up()  {  Schema::create('profile', function (Blueprint $table) {  $table-gt;id();  $table-gt;integer('user_id')-gt;unsigned();  $table-gt;string('address')-gt;nullable();  $table-gt;string('apt')-gt;nullable();  $table-gt;string('city')-gt;nullable();  $table-gt;string('state')-gt;nullable();  $table-gt;string('zipcode')-gt;nullable();  $table-gt;string('homephone')-gt;nullable();  $table-gt;string('mobile')-gt;nullable();  $table-gt;string('occupation')-gt;nullable();  $table-gt;boolean('over18')-gt;nullable();  $table-gt;string('homechurch')-gt;nullable();  $table-gt;string('homechurchcity')-gt;nullable();  $table-gt;string('pastor')-gt;nullable();  $table-gt;string('howoftenattend')-gt;nullable();  $table-gt;timestamps();   $table-gt;foreign('user_id')-gt;references('id')-gt;on('users')-gt;onDelete('cascade');  });    

Приложение

 public function up()  {  Schema::create('pilgrim_application', function (Blueprint $table) {  $table-gt;id();  $table-gt;string('besttimetocall');  $table-gt;string('nickname');    $table-gt;foreignId('user_id')-gt;constrained('users')-gt;onDelete('cascade');  $table-gt;foreignId('profile_id')-gt;constrained('profile')-gt;onDelete('cascade');   $table-gt;timestamps();  });    

Ответ №1:

Работает ли ваша миграция в данный момент?

Сначала проверьте порядок файлов миграции, например

0000_пользователь

0001_профиль

1000_ паломничеств_приложение

1001_app_two

в случае нескольких приложений вы можете начать миграцию с другого номера для группировки файлов в списке, это может быть удобно, если вы хотите создать несколько приложений.

Кроме того, необходимо ли указывать пользователя и профиль отношений в миграции приложения паломничества?

С помощью связей в ваших моделях вы также можете получить доступ к приложению паломничества из пользовательской модели и наоборот.

 $user-gt;profile-gt;pilgrim_application