Я настраиваю миграцию для пользователей. Я хочу использовать это, чтобы проверить, соответствует ли пользователь другому пользователю, и если он включен, чтобы видеть и комментировать записи издателя.Laravel Migration for Followers/follow
Я делаю это основано на этом примере:
Я написал:
class CreateFollowersTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('followers', function (Blueprint $table) {
$table->unsignedInteger('publisher_id')->nullable()->unsigned();
$table->unsignedInteger('follower_id')->nullable()->unsigned();
$table->boolean('enable_follow')->default('1')->unsigned();
$table->timestamps();
$table->foreign('publisher_id')
->references('id')
->on('users')
->onDelete('cascade');
$table->foreign('follower_id')
->references('id')
->on('users')
->onDelete('cascade');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
schema::drop('followers');
}
}
Использование этой таблицы должны быть следующие:
1) Пользователь может (щелкнуть) следовать за издателем и таким образом стать последователем в соответствии с таблицей. Пример Publisher_id = 1; Follower_id = 2; enable_follow = 1;
Пользователь с id 2 теперь следует за идентификатором пользователя 1 и может видеть сообщения этого пользователя на фиде, например, в твиттере. Пользователь имеет возможность просмотреть сообщения и комментировать эти должности, как enable_follow устанавливается в 1
2) Издатель может запретить пользователю видеть или комментируя свои посты, пример Publisher_id = 1; Follower_id = 2; enable_follow = 0;
Вопрос: какие пользователи может видеть (после поиска сообщений, а не по каналу) и прокомментировать другие сообщения пользователей? Ответ: каждый пользователь, если издатель, получив нежелательный комментарий, решает запретить пользователю, разместившему нежелательный комментарий.
Перед тем как комментировать, в таблице подписчиков между двумя пользователями нет никаких отношений. Отношения создаются после того, как издатель запрещает пользователю и будет выглядеть как в примере номер 2 Publisher_id = 1; Follower_id = 2; enable_follow = 0;
Так что в основном «follower_id» действительно действует как как следящий, так и комментатор.
Хорошо, что имеет смысл. Вам нужна запись в таблице 'followers', чтобы записи издателя могли отображаться в фиде пользователей. Пользователь все равно может найти любого издателя/сообщения, на которых он в настоящее время не «подписался». – user3158900