Добрый вечер. Перейду сразу к сути.
Есть проект, который предполагает создание поддоменов пользователями. Гости регистрируются как пользователи, после чего, пользователь может себе создать поддомен 3го уровня, http://
test.site.ru. На поддоменах должна быть возможность создавать категории и статьи на этом поддомене. Как правильно спроектировать структуру статей, категорий, чтобы была привязка к поддомену, тобишь на поддомене
TEST... показывались только категории и статьи относящейся к этому поддомену. Я накидал примерную структуру, но не могу понять, где именно делать привязку к поддомену, толи в категориях, то ли в самих статьях... Подскажите, как будет правильнее?
Таблица категорий
spoilerSchema::create('categories', function (Blueprint $table) {
$table->increments('id');
$table->integer('parent_id')->unsigned()->nullable()->default(null);
$table->foreign('parent_id')->references('id')->on('categories')->onUpdate('cascade')->onDelete('set null');
$table->integer('sort')->default(0);
$table->string('name');
$table->string('slug')->unique();
$table->integer('visibility')->default(1);
/*$table->integer('domain_id');
$table->foreign('domain_id')->references('id')->on('domains')->onDelete('cascade');
$table->unsignedInteger('domain_id')->index('domains_category_id_index');*/
$table->string('type');
$table->string('meta_description');
$table->string('meta_keywords');
$table->timestamps();
});
Таблица статей
spoilerSchema::create('articles', function (Blueprint $table) {
$table->increments('id');
$table->unsignedInteger('category_id')->index('articles_category_id_index');
$table->unsignedInteger('user_id')->index('articles_user_id_index');
$table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
$table->foreign('category_id')->references('id')->on('categories')->onDelete('cascade');
$table->string('title');
$table->string('slug')->unique()->index('articles_slug_index');
$table->longText('content_source');
$table->longText('content_rendered');
$table->tinyInteger('visibility')->default(1);
$table->text('meta_description');
$table->text('meta_keywords');
$table->timestamp('published_at');
$table->timestamps();
});