diff --git a/app/Models/User.php b/app/Models/User.php index 7b54395..b1746e9 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -43,4 +43,8 @@ class User extends Authenticatable { return $this->hasMany(UserGift::class, 'user_id'); } + + public function activityLogs(){ + return $this->hasMany(UserActivity::class, 'user_id'); + } } diff --git a/database/factories/UserActivityFactory.php b/database/factories/UserActivityFactory.php new file mode 100644 index 0000000..a728b43 --- /dev/null +++ b/database/factories/UserActivityFactory.php @@ -0,0 +1,34 @@ + + */ +class UserActivityFactory extends Factory +{ + /** + * The current password being used by the factory. + */ + protected static ?string $password; + + /** + * Define the model's default state. + * + * @return array + */ + public function definition(): array + { + return [ + 'activity_id' => 1, + 'mark' => rand(50, 500), + 'join_times' => rand(5, 10), + 'right_times' => rand(0, 5), + 'last_join_at' => now(), + ]; + } +} diff --git a/database/factories/UserFactory.php b/database/factories/UserFactory.php index 584104c..777ef94 100644 --- a/database/factories/UserFactory.php +++ b/database/factories/UserFactory.php @@ -24,21 +24,9 @@ class UserFactory extends Factory public function definition(): array { return [ - 'name' => fake()->name(), - 'email' => fake()->unique()->safeEmail(), - 'email_verified_at' => now(), - 'password' => static::$password ??= Hash::make('password'), - 'remember_token' => Str::random(10), + 'nick_name' => fake()->name(), + 'mini_openid' => Str::random(16), + 'avatar' => env('APP_URL').'/default-avatar.png', ]; } - - /** - * Indicate that the model's email address should be unverified. - */ - public function unverified(): static - { - return $this->state(fn (array $attributes) => [ - 'email_verified_at' => null, - ]); - } } diff --git a/database/seeders/UserFactorySeeder.php b/database/seeders/UserFactorySeeder.php new file mode 100644 index 0000000..c197951 --- /dev/null +++ b/database/seeders/UserFactorySeeder.php @@ -0,0 +1,19 @@ +has(UserActivity::factory()->count(1), 'activityLogs')->count(40)->create(); + } +}