reorganization DirectionProfile and Direction to many to many
This commit is contained in:
parent
bd8bb7e059
commit
9d7f531ac8
|
@ -5,6 +5,7 @@ namespace App\Models;
|
|||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsToMany;
|
||||
|
||||
class DirectionProfile extends Model
|
||||
{
|
||||
|
@ -16,11 +17,10 @@ class DirectionProfile extends Model
|
|||
'description',
|
||||
'slug',
|
||||
'position',
|
||||
'direction_id'
|
||||
];
|
||||
|
||||
public function direction(): BelongsTo
|
||||
public function direction(): BelongsToMany
|
||||
{
|
||||
return $this->belongsTo(Direction::class);
|
||||
return $this->belongsToMany(Direction::class);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -13,7 +13,6 @@ class DirectionProfileFactory extends Factory
|
|||
'description' => fake()->text(),
|
||||
'slug' => fake()->slug(),
|
||||
'position' => 1,
|
||||
'direction_id' => 1,
|
||||
];
|
||||
}
|
||||
}
|
||||
|
|
|
@ -17,7 +17,6 @@ return new class extends Migration
|
|||
$table->text('description')->nullable();
|
||||
$table->string('slug');
|
||||
$table->string('position');
|
||||
$table->foreignId('direction_id')->constrained('directions');
|
||||
$table->timestamps();
|
||||
});
|
||||
}
|
||||
|
|
|
@ -11,12 +11,10 @@ return new class extends Migration
|
|||
*/
|
||||
public function up(): void
|
||||
{
|
||||
Schema::create('place_types', function (Blueprint $table) {
|
||||
Schema::create('direction_direction_profile', function (Blueprint $table) {
|
||||
$table->id();
|
||||
$table->integer('position');
|
||||
$table->string('name');
|
||||
$table->text('description')->nullable();
|
||||
$table->string('slug');
|
||||
$table->foreignId('direction_id')->constrained('directions');
|
||||
$table->foreignId('direction_profile_id')->constrained('direction_profiles');
|
||||
$table->timestamps();
|
||||
});
|
||||
}
|
||||
|
@ -26,6 +24,6 @@ return new class extends Migration
|
|||
*/
|
||||
public function down(): void
|
||||
{
|
||||
Schema::dropIfExists('place_types');
|
||||
Schema::dropIfExists('direction_direction_profile');
|
||||
}
|
||||
};
|
|
@ -16,21 +16,18 @@ class DirectionProfileSeeder extends Seeder
|
|||
'description' => 'Государственно-правовой профиль',
|
||||
'slug' => 'the-state-legal',
|
||||
'position' => 1,
|
||||
'direction_id' => 1,
|
||||
],
|
||||
[
|
||||
'name' => 'Условно-правовой',
|
||||
'description' => 'Условно-правовой профиль',
|
||||
'slug' => 'probationary-profile',
|
||||
'position' => 2,
|
||||
'direction_id' => 1,
|
||||
],
|
||||
[
|
||||
'name' => 'Цифровой Юрист',
|
||||
'description' => 'Цифровой Юрист профиль',
|
||||
'slug' => 'digital-lawyer',
|
||||
'position' => 3,
|
||||
'direction_id' => 1,
|
||||
],
|
||||
]);
|
||||
}
|
||||
|
|
|
@ -18,18 +18,6 @@
|
|||
@endif
|
||||
</div>
|
||||
|
||||
<div class="mt-3">
|
||||
{{ Form::label('direction_id', 'Направление подготовки') }}
|
||||
</div>
|
||||
<div class="mt-1">
|
||||
{{ Form::select('direction_id', $directions, null, ['class' => 'form-select']) }}
|
||||
</div>
|
||||
<div>
|
||||
@if ($errors->any())
|
||||
{{ $errors->first('direction_id') }}
|
||||
@endif
|
||||
</div>
|
||||
|
||||
<div class="mt-3">
|
||||
{{ Form::label('description', 'Описание') }}
|
||||
</div>
|
||||
|
|
|
@ -18,18 +18,6 @@
|
|||
@endif
|
||||
</div>
|
||||
|
||||
<div class="mt-3">
|
||||
{{ Form::label('direction_id', 'Направление подготовки') }}
|
||||
</div>
|
||||
<div class="mt-1">
|
||||
{{ Form::select('direction_id', $directions, $directionProfile->direction->id, ['class' => 'form-select']) }}
|
||||
</div>
|
||||
<div>
|
||||
@if ($errors->any())
|
||||
{{ $errors->first('direction_id') }}
|
||||
@endif
|
||||
</div>
|
||||
|
||||
<div class="mt-3">
|
||||
{{ Form::label('description', 'Описание') }}
|
||||
</div>
|
||||
|
|
|
@ -10,7 +10,6 @@
|
|||
<thead class="border-b-2 border-solid border-black text-left" style="text-align: left">
|
||||
<tr>
|
||||
<th scope="col">Название</th>
|
||||
<th scope="col">Направление подготовки</th>
|
||||
<th scope="col">Описание</th>
|
||||
<th scope="col">Позиция</th>
|
||||
<th scope="col">URL</th>
|
||||
|
@ -22,7 +21,6 @@
|
|||
@foreach($directionProfiles as $directionProfile)
|
||||
<tr class="">
|
||||
<td><a href="{{ route('direction_profiles.show', $directionProfile) }}">{{ $directionProfile->name }}</a></td>
|
||||
<td><a href="{{ route('directions.show', $directionProfile->direction) }}">{{ $directionProfile->direction->name }}</a></td>
|
||||
<td>{{ Str::words($directionProfile->description, 10, '...') }}</td>
|
||||
<td>{{ $directionProfile->position }}</td>
|
||||
<td>{{ $directionProfile->slug }}</td>
|
||||
|
|
|
@ -4,8 +4,6 @@
|
|||
<div class="container mt-4">
|
||||
<h2>Название</h2>
|
||||
<p>{{ $directionProfile->name }}</p>
|
||||
<h2>Направление подготовки</h2>
|
||||
<p><a href="{{ route('directions.show', $directionProfile->direction) }}">{{ $directionProfile->direction->name }}</a></p>
|
||||
<h2>Описание</h2>
|
||||
<p>{{ $directionProfile->description }}</p>
|
||||
<h2>Позиция</h2>
|
||||
|
|
Loading…
Reference in New Issue