Как я могу дать двум разным типам пользователей одинаковую функциональность в Laravel? - PullRequest
0 голосов
/ 19 июня 2019

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

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

Игрок

Schema::create('players', function (Blueprint $table) {
            $table->increments('id');
            $table->string('first_name');
            $table->string('last_name');
            $table->integer('player_id_type')->default('1');
            $table->unsignedBigInteger('player_id');
            $table->string('email')->unique();
            $table->string('password');
            $table->rememberToken();
            $table->timestamps();
        });

Производитель

Schema::create('vendors', function (Blueprint $table) {
            $table->increments('id');
            $table->string('store name');
            $table->string('email')->unique();
            $table->string('password');
            $table->rememberToken();
            $table->timestamps();
        });

событие

Schema::create('events', function (Blueprint $table) {
            $table->increments('id');
            $table->string('user_id');
            $table->string('name')
        });

Проблема в том, что игрок и поставщик могут иметь id = 1. Кроме того, при создании события я не знаю, искать ли игрока с таким идентификатором или продавца.

Пожалуйста, ознакомьтесь с некоторыми предложениями о том, как я мог бы решить эту проблему или реализовать ее по-другому.

Спасибо.

1 Ответ

0 голосов
/ 19 июня 2019

существует конфликт, что у вас есть две таблицы одного и того же первичного ключа при извлечении объекта 'события', чем какая таблица ссылается на user_id?так что вы можете добавить третью таблицу с именем пользователя и затем связать ее с событием, чтобы конфликт уменьшился

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...