Tinker Factory: crea datos de Laravel

Tinker Factory

Laravel crea datos ficticios usando Tinker Factory

Tinker Factory – Laravel crea datos falsos


Ahora, veamos el artículo de laravel factory faker. es un ejemplo simple de Tinker Factory de Laravel.

También puede usar factory tinker en las versiones de laravel 6, laravel 7 y laravel 8.

Como sabemos, las pruebas son una parte muy importante de cualquier proyecto de desarrollo web. A veces, es posible que necesitemos agregar cientos de registros en la tabla de su usuario, O tal vez miles de registros. Además, piense si necesita verificar la paginación. luego tienes que agregar algunos registros para probar. Entonces, ¿qué hará en ese momento? ¿Agregará manualmente miles de registros? A qué Se dedica? Si agrega manualmente miles de registros, puede llevar más tiempo.

Sin embargo, Laravel tiene un retoque que permite crear registros ficticios en su tabla modelo. por lo que en la aplicación laravel, proporcionan una fábrica de modelos de usuario creada por defecto. para que pueda ver cómo crear registros usando la fábrica a continuación.

Generar usuarios ficticios (Cmd)

php artisan tinker
User::factory()->count(5)->create()

Esto por defecto creó una fábrica de laravel. también puede verlo en la siguiente URL: database/factories/ UserFactory.php.

Crear fábrica personalizada:

Pero cuando necesita crear registros ficticios para sus productos, artículos o tabla de administración, debe crear una nueva fábrica usando el comando tinker. aquí te daré un ejemplo sencillo de cómo crear una fábrica de productos y entenderás cómo funciona. así que creemos un modelo de producto como se muestra a continuación:

Ubicación:- app\Models\Product.php

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;

use Illuminate\Database\Eloquent\Model;

class Product extends Model

{

use HasFactory;

protected $fillable = [

'name', 'slug', 'detail'

];

}

Ahora creamos nuestra fábrica personalizada usando el siguiente comando:

php artisan make:factory ProductFactory --model=Product

Ahora crearon una nueva clase de fábrica para el producto y puede agregar el siguiente código:

Ubicación:- database\factories\ProductFactory.php

<?php

namespace Database\Factories;

use App\Models\Product;

use Illuminate\Database\Eloquent\Factories\Factory;

use Illuminate\Support\Str;

class ProductFactory extends Factory

{

/**

* The name of the factory's corresponding model.

*

* @var string

*/

protected $model = Product::class;

/**

* Define the model's default state.

*

* @return array

*/

public function definition()

{

return [

'name' => $this->faker->name,

'slug' => Str::slug($this->faker->name),

'detail' => $this->faker->text,

];

}

}

Con Faker se puede utilizar para generar los siguientes tipos de datos:

  • Números
  • Texto de Lorem
  • Persona, es decir, títulos, nombres, género, etc.
  • Direcciones
  • Números de teléfono
  • Compañías
  • Texto
  • Fecha y hora
  • Internet, es decir, dominios, URL, correos electrónicos, etc.
  • Agentes de usuario
  • Pagos, es decir, MasterCard
  • Color
  • Archivos
  • Imagenes
  • uuid
  • Códigos de barras

Como puede ver arriba, simplemente puede usar tipos de datos. Ahora vamos a crear una tabla de 500 registros de productos con el siguiente comando:

Generar producto ficticio:

php artisan tinker
Product::factory()->count(500)->create()

Así que espero que haya creado sus 500 registros ficticios en la tabla de productos.

Producción:

Viniendo en Cmd

Espero que pueda ayudarte …

Recent Post