artwork.jpgКак мы обрабатываем схему базы данных с типами работ, которые имеют уникальные данные для каждого типа?
Я пытаюсь разработать решение для художественных работ, но зациклился на проблеме типа категории на том, как закодировать это в схеме базы данных. Я только начал понимать концепцию родительского и внешнего ключа.
Произведение относится к типу категории, таким как фотографии, музыкальные партитуры, картины, скульптуры. То, что я сделал, было создано таблица для обложки и таблица для типов категорий и связанный внешний ключ с основной таблицей художественных работ. Что делать, если фотографии имеют определенную или уникальную информацию, такую как формат фотографии и дата съемки фотографии. В попытке нормализовать это, нужна ли нам отдельная таблица для размещения информации о фотографиях?
Как преобразовать схему диаграмм? См. Прилагаемый рисунок artwork.jpg для диаграммы. Чтобы я не только связывал таблицу художественных работ с категориями, у каждого типа категории также была отдельная таблица, чтобы приносить уникальную информацию, такую как формат фотографий для фотографий, имя композитора и длина (минуты) для музыкальных партитур. Пожалуйста, помогите пролить свет на это. Спасибо.
public function up()
{
Schema::create('artwork', function (Blueprint $table) {
$table->increments('id');
$table->string('title');
//this is foreign key to the categories table
$table->integer('category_id')->nullable()->unsigned();
$table->foreign('category_id')->references('id')
->on('categories')
->onDelete('cascade');
$table->string('author');
$table->string('groupcountry');
$table->string('year');
$table->string('description');
});
}
=============================
class CreateCategoriesTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('categories', function (Blueprint $table) {
$table->increments('id');
$table->string('category_name');
$table->string('category_description');
});
}
Спасибо Уолтер указал мне на ресурсы – BraveHeart