File "ProjectSectorFactory.php"
Full Path: /home/tecassol/public_html/tecas-solar.ma/database/factories/ProjectSectorFactory.php
File size: 1.45 KB
MIME-type: text/x-php
Charset: utf-8
<?php
namespace Database\Factories;
use App\Models\ProjectSector;
use Illuminate\Database\Eloquent\Factories\Factory;
use Illuminate\Support\Str;
/**
* @extends \Illuminate\Database\Eloquent\Factories\Factory<\App\Models\ProjectSector>
*/
class ProjectSectorFactory extends Factory
{
/**
* Define the model's default state.
*
* @return array<string, mixed>
*/
public function definition(): array
{
$name = $this->faker->words(3, true);
return [
'name' => ucfirst($name),
'slug' => Str::slug($name),
'description' => $this->faker->paragraph(2),
'is_published' => $this->faker->boolean(80),
'published_at' => $this->faker->optional()->dateTimeBetween('-1 year', 'now'),
'seo_title' => $this->faker->optional()->sentence(6),
'is_active' => $this->faker->boolean(50),
'seo_description' => $this->faker->optional()->sentence(15),
];
}
public function configure(): ProjectSectorFactory
{
return $this->afterCreating(function (ProjectSector $projectSector) {
// Add project cover image
$projectSector->addMediaFromUrl('https://picsum.photos/1920/1080')
->toMediaCollection('project-cover');
// Add og-image
$projectSector->addMediaFromUrl('https://picsum.photos/1200/630')
->toMediaCollection('project-og-image');
});
}
}