{"id":181,"date":"2024-10-23T03:51:15","date_gmt":"2024-10-23T03:51:15","guid":{"rendered":"https:\/\/leonet.io\/?p=181"},"modified":"2024-10-23T03:51:17","modified_gmt":"2024-10-23T03:51:17","slug":"como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel","status":"publish","type":"post","link":"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/","title":{"rendered":"C\u00f3mo convertir un c\u00f3digo SQL en su Equivalente en el ORM de Laravel"},"content":{"rendered":"\n<p>Laravel ofrece una forma poderosa y flexible para gestionar bases de datos utilizando su <strong>ORM Eloquent<\/strong>. En este post, te mostrar\u00e9 c\u00f3mo convertir el siguiente c\u00f3digo SQL en su equivalente en Laravel mediante <strong>migraciones<\/strong>, <strong>modelos<\/strong> y <strong>controladores<\/strong>. Vamos a construir la funcionalidad completa para la tabla <code>aseguradoras<\/code>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">C\u00f3digo SQL original<\/h3>\n\n\n\n<p>El siguiente c\u00f3digo SQL crea una tabla llamada <code>aseguradoras<\/code> con varios campos, como <code>clave_aseguradora<\/code>, <code>nombre<\/code>, <code>fecha_inicial<\/code>, <code>fecha_final<\/code>, y <code>no_seguro<\/code><\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"sql\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">CREATE TABLE aseguradoras (\n  clave_aseguradora int(11) NOT NULL,\n  nombre VARCHAR(255) NOT NULL,\n  fecha_inicial datetime NOT NULL,\n  fecha_final datetime NOT NULL,\n  no_seguro varchar(255) NOT NULL,\n  PRIMARY KEY (clave_aseguradora)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;\nCOMMIT;<\/pre>\n\n\n\n<p>Este c\u00f3digo SQL crea una tabla llamada <code>aseguradoras<\/code> con los siguientes campos:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>clave_aseguradora<\/code>. Un entero que sirve como clave primaria.<\/li>\n\n\n\n<li><code>nombre<\/code>. Un campo de texto (VARCHAR) de longitud m\u00e1xima de 255 caracteres.<\/li>\n\n\n\n<li><code>fecha_inicial<\/code>. Un campo de tipo <strong>datetime<\/strong> para la fecha inicial.<\/li>\n\n\n\n<li><code>fecha_final<\/code>.Un campo de tipo <strong>datetime<\/strong> para la fecha final.<\/li>\n\n\n\n<li><code>no_seguro<\/code>. Un campo de texto para el n\u00famero de seguro.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Paso 1. Crear la migraci\u00f3n<\/h2>\n\n\n\n<p>Laravel ofrece una herramienta llamada <strong>Artisan<\/strong> que facilita la creaci\u00f3n de migraciones, modelos y controladores. Empezaremos creando la migraci\u00f3n correspondiente a la tabla <code>aseguradoras<\/code>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1.1. Crear la migraci\u00f3n, modelo y controlador<\/h3>\n\n\n\n<p>Ejecuta el siguiente comando para generar una migraci\u00f3n, el modelo <code>Aseguradora<\/code> y el controlador <code>AseguradoraController<\/code>:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"762\" src=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_00-3-1024x762.png?resize=1024%2C762&#038;ssl=1\" alt=\"\" class=\"wp-image-182\" srcset=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_00-3.png?resize=1024%2C762&amp;ssl=1 1024w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_00-3.png?resize=300%2C223&amp;ssl=1 300w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_00-3.png?resize=768%2C571&amp;ssl=1 768w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_00-3.png?resize=60%2C46&amp;ssl=1 60w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_00-3.png?w=1050&amp;ssl=1 1050w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"762\" src=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_01-2-1024x762.png?resize=1024%2C762&#038;ssl=1\" alt=\"\" class=\"wp-image-183\" srcset=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_01-2.png?resize=1024%2C762&amp;ssl=1 1024w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_01-2.png?resize=300%2C223&amp;ssl=1 300w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_01-2.png?resize=768%2C571&amp;ssl=1 768w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_01-2.png?resize=60%2C46&amp;ssl=1 60w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_01-2.png?w=1050&amp;ssl=1 1050w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Este comando generar\u00e1:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Migraci\u00f3n<\/strong>. Un archivo de migraci\u00f3n en el directorio <code>database\/migrations\/<\/code>.<\/li>\n\n\n\n<li><strong>Modelo<\/strong>. El modelo <code>Aseguradora<\/code> en el directorio <code>app\/Models\/<\/code>.<\/li>\n\n\n\n<li><strong>Controlador.<\/strong> Un controlador llamado <code>AseguradoraController<\/code> en el directorio <code>app\/Http\/Controllers\/<\/code>.<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">1.2. Editar la migraci\u00f3n<\/h3>\n\n\n\n<p>Vamos a editar el archivo de migraci\u00f3n que se encuentra en <code>database\/migrations\/<\/code>, para que coincida con la estructura de la tabla SQL proporcionada.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"762\" src=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_02-2-1024x762.png?resize=1024%2C762&#038;ssl=1\" alt=\"\" class=\"wp-image-184\" srcset=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_02-2.png?resize=1024%2C762&amp;ssl=1 1024w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_02-2.png?resize=300%2C223&amp;ssl=1 300w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_02-2.png?resize=768%2C571&amp;ssl=1 768w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_02-2.png?resize=60%2C46&amp;ssl=1 60w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_02-2.png?w=1050&amp;ssl=1 1050w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"php\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">use Illuminate\\Database\\Migrations\\Migration;\nuse Illuminate\\Database\\Schema\\Blueprint;\nuse Illuminate\\Support\\Facades\\Schema;\n\nclass CreateAseguradorasTable extends Migration\n{\n    public function up()\n    {\n        Schema::create('aseguradoras', function (Blueprint $table) {\n            $table->integer('clave_aseguradora')->primary(); \/\/ Clave primaria\n            $table->string('nombre', 255);                   \/\/ Nombre VARCHAR(255)\n            $table->dateTime('fecha_inicial');               \/\/ Fecha inicial DATETIME\n            $table->dateTime('fecha_final');                 \/\/ Fecha final DATETIME\n            $table->string('no_seguro', 255);                \/\/ No. de seguro VARCHAR(255)\n            $table->timestamps();                            \/\/ Campos created_at y updated_at\n        });\n    }\n\n    public function down()\n    {\n        Schema::dropIfExists('aseguradoras');\n    }\n}<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"668\" src=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_03-2-1024x668.png?resize=1024%2C668&#038;ssl=1\" alt=\"\" class=\"wp-image-185\" srcset=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_03-2.png?resize=1024%2C668&amp;ssl=1 1024w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_03-2.png?resize=300%2C196&amp;ssl=1 300w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_03-2.png?resize=768%2C501&amp;ssl=1 768w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_03-2.png?w=1198&amp;ssl=1 1198w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">1.3. Ejecutar la migraci\u00f3n<\/h3>\n\n\n\n<p>Una vez que hayas editado la migraci\u00f3n, ejecuta el siguiente comando para crear la tabla <code>aseguradoras<\/code> en tu base de datos:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">php artisan migrate<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"668\" src=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_04-4-1024x668.png?resize=1024%2C668&#038;ssl=1\" alt=\"\" class=\"wp-image-186\" srcset=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_04-4.png?resize=1024%2C668&amp;ssl=1 1024w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_04-4.png?resize=300%2C196&amp;ssl=1 300w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_04-4.png?resize=768%2C501&amp;ssl=1 768w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_04-4.png?w=1198&amp;ssl=1 1198w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"668\" src=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_05-2-1024x668.png?resize=1024%2C668&#038;ssl=1\" alt=\"\" class=\"wp-image-187\" srcset=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_05-2.png?resize=1024%2C668&amp;ssl=1 1024w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_05-2.png?resize=300%2C196&amp;ssl=1 300w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_05-2.png?resize=768%2C501&amp;ssl=1 768w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_05-2.png?w=1198&amp;ssl=1 1198w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Esto crear\u00e1 la tabla <code>aseguradoras<\/code> con la estructura definida.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Paso 2. Crear el modelo <code>Aseguradora<\/code><\/h2>\n\n\n\n<p>El <strong>modelo<\/strong> en Laravel es una representaci\u00f3n de una tabla en la base de datos y te permite interactuar con los registros de manera m\u00e1s sencilla. Ahora vamos a definir el modelo <code>Aseguradora<\/code>.<\/p>\n\n\n\n<p>Modelo <code>Aseguradora<\/code><\/p>\n\n\n\n<p>Abre el archivo <code>app\/Models\/Aseguradora.php<\/code> y ed\u00edtalo para reflejar la estructura de nuestra tabla:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"668\" src=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_06-2-1024x668.png?resize=1024%2C668&#038;ssl=1\" alt=\"\" class=\"wp-image-188\" srcset=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_06-2.png?resize=1024%2C668&amp;ssl=1 1024w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_06-2.png?resize=300%2C196&amp;ssl=1 300w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_06-2.png?resize=768%2C501&amp;ssl=1 768w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_06-2.png?w=1198&amp;ssl=1 1198w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"php\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">namespace App\\Models;\n\nuse Illuminate\\Database\\Eloquent\\Factories\\HasFactory;\nuse Illuminate\\Database\\Eloquent\\Model;\n\nclass Aseguradora extends Model\n{\n    use HasFactory;\n\n    \/\/ Nombre de la tabla\n    protected $table = 'aseguradoras';\n\n    \/\/Indicar la clave primaria correcta\n    protected $primaryKey = \"clave_aseguradora\";\n\n    \/\/ Clave primaria no auto-incremental\n    public $incrementing = false;\n\n    \/\/ Tipo de clave primaria\n    protected $keyType = 'int';\n\n    \/\/ Los campos que pueden asignarse de forma masiva\n    protected $fillable = [\n        'clave_aseguradora',\n        'nombre',\n        'fecha_inicial',\n        'fecha_final',\n        'no_seguro',\n    ];\n\n    \/\/ Indicamos que las fechas deben ser tratadas como objetos de tipo Carbon\n    protected $dates = ['fecha_inicial', 'fecha_final'];\n}<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"691\" src=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_07-2-1024x691.png?resize=1024%2C691&#038;ssl=1\" alt=\"\" class=\"wp-image-190\" srcset=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_07-2.png?resize=1024%2C691&amp;ssl=1 1024w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_07-2.png?resize=300%2C202&amp;ssl=1 300w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_07-2.png?resize=768%2C518&amp;ssl=1 768w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_07-2.png?w=1198&amp;ssl=1 1198w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Explicaci\u00f3n<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>$table<\/strong>. Define el nombre de la tabla en la base de datos.<\/li>\n\n\n\n<li><strong>$primaryKey<\/strong>. Define el nombre del campo que es llave primaria.<\/li>\n\n\n\n<li><strong>$incrementing = false<\/strong>. Especifica que la clave primaria (<code>clave_aseguradora<\/code>) no es auto-incremental.<\/li>\n\n\n\n<li><strong>$keyType = &#8216;int&#8217;<\/strong>. Define que la clave primaria es de tipo entero.<\/li>\n\n\n\n<li><strong>$fillable<\/strong>. Lista de los campos que pueden ser asignados masivamente.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Paso 3. Crear el controlador <code>AseguradoraController<\/code><\/h2>\n\n\n\n<p>El <strong>controlador<\/strong> gestionar\u00e1 las operaciones CRUD (Crear, Leer, Actualizar y Eliminar) para la tabla <code>aseguradoras<\/code>. Laravel genera un controlador de recursos que incluye estos m\u00e9todos b\u00e1sicos.<\/p>\n\n\n\n<p>Abre el archivo <code>app\/Http\/Controllers\/AseguradoraController.php<\/code> y ed\u00edtalo para que contenga los m\u00e9todos necesarios.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"691\" src=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_08-2-1024x691.png?resize=1024%2C691&#038;ssl=1\" alt=\"\" class=\"wp-image-191\" srcset=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_08-2.png?resize=1024%2C691&amp;ssl=1 1024w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_08-2.png?resize=300%2C202&amp;ssl=1 300w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_08-2.png?resize=768%2C518&amp;ssl=1 768w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_08-2.png?w=1198&amp;ssl=1 1198w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">3.1. Mostrar todos los registros (m\u00e9todo <code>index<\/code>)<\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"php\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">public function index()\n{\n    \/\/ Obtener todos los registros\n    $aseguradoras = Aseguradora::all();\n    \/\/ Pasar los registros a la vista\n    return view('aseguradoras.index', compact('aseguradoras')); \n}<\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"554\" height=\"196\" src=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_09-3.png?resize=554%2C196&#038;ssl=1\" alt=\"\" class=\"wp-image-192\" srcset=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_09-3.png?w=554&amp;ssl=1 554w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_09-3.png?resize=300%2C106&amp;ssl=1 300w\" sizes=\"auto, (max-width: 554px) 100vw, 554px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">3.2. Mostrar el formulario para crear un nuevo registro (m\u00e9todo <code>create<\/code>)<\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"php\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">public function create()\n{\n    \/\/ Mostrar el formulario de creaci\u00f3n\n    return view('aseguradoras.create'); \n}<\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"532\" height=\"167\" src=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_10-2.png?resize=532%2C167&#038;ssl=1\" alt=\"\" class=\"wp-image-194\" srcset=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_10-2.png?w=532&amp;ssl=1 532w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_10-2.png?resize=300%2C94&amp;ssl=1 300w\" sizes=\"auto, (max-width: 532px) 100vw, 532px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">3.3. Guardar un nuevo registro (m\u00e9todo <code>store<\/code>)<\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"php\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">public function store(Request $request)\n{\n    \/\/ Validar los datos recibidos del formulario\n    $request->validate([\n        'clave_aseguradora' => 'required|integer',\n        'nombre' => 'required|string|max:255',\n        'fecha_inicial' => 'required|date',\n        'fecha_final' => 'required|date',\n        'no_seguro' => 'required|string|max:255',\n    ]);\n\n    \/\/ Crear un nuevo registro\n    Aseguradora::create($request->all());\n\n    \/\/ Redirigir a la lista de aseguradoras con un mensaje de \u00e9xito\n    return redirect()->route('aseguradoras.index')->with('success', 'Aseguradora creada con \u00e9xito');\n}<\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"810\" height=\"403\" src=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_11-2.png?resize=810%2C403&#038;ssl=1\" alt=\"\" class=\"wp-image-195\" srcset=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_11-2.png?w=810&amp;ssl=1 810w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_11-2.png?resize=300%2C149&amp;ssl=1 300w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_11-2.png?resize=768%2C382&amp;ssl=1 768w\" sizes=\"auto, (max-width: 810px) 100vw, 810px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">3.4. Mostrar un registro espec\u00edfico (m\u00e9todo <code>show<\/code>)<\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"php\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">public function show(Aseguradora $aseguradora)\n{\n    return view('aseguradoras.show', compact('aseguradora'));\n}<\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"518\" height=\"153\" src=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_12-2.png?resize=518%2C153&#038;ssl=1\" alt=\"\" class=\"wp-image-196\" srcset=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_12-2.png?w=518&amp;ssl=1 518w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_12-2.png?resize=300%2C89&amp;ssl=1 300w\" sizes=\"auto, (max-width: 518px) 100vw, 518px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">3.5. Mostrar el formulario de edici\u00f3n (m\u00e9todo <code>edit<\/code>)<\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"php\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">public function edit(Aseguradora $aseguradora)\n{\n    return view('aseguradoras.edit', compact('aseguradora'));\n}<\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"515\" height=\"148\" src=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_13-2.png?resize=515%2C148&#038;ssl=1\" alt=\"\" class=\"wp-image-198\" srcset=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_13-2.png?w=515&amp;ssl=1 515w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_13-2.png?resize=300%2C86&amp;ssl=1 300w\" sizes=\"auto, (max-width: 515px) 100vw, 515px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">3.6. Actualizar un registro existente (m\u00e9todo <code>update<\/code>)<\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"php\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">public function update(Request $request, Aseguradora $aseguradora)\n{\n    \/\/ Validar los datos recibidos\n    $request->validate([\n        'clave_aseguradora' => 'required|integer',\n        'nombre' => 'required|string|max:255',\n        'fecha_inicial' => 'required|date',\n        'fecha_final' => 'required|date',\n        'no_seguro' => 'required|string|max:255',\n    ]);\n\n    \/\/ Actualizar el registro\n    $aseguradora->update($request->all());\n\n    \/\/ Redirigir con un mensaje de \u00e9xito\n    return redirect()->route('aseguradoras.index')->with('success', 'Aseguradora actualizada con \u00e9xito');\n}<\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"853\" height=\"391\" src=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_14-2.png?resize=853%2C391&#038;ssl=1\" alt=\"\" class=\"wp-image-199\" srcset=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_14-2.png?w=853&amp;ssl=1 853w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_14-2.png?resize=300%2C138&amp;ssl=1 300w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_14-2.png?resize=768%2C352&amp;ssl=1 768w\" sizes=\"auto, (max-width: 853px) 100vw, 853px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">3.7. Eliminar un registro (m\u00e9todo <code>destroy<\/code>)<\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"php\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">public function destroy(Aseguradora $aseguradora)\n{\n    $aseguradora->delete(); \/\/ Eliminar el registro\n    return redirect()->route('aseguradoras.index')->with('success', 'Aseguradora eliminada con \u00e9xito');\n}<\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"840\" height=\"161\" src=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_15-2.png?resize=840%2C161&#038;ssl=1\" alt=\"\" class=\"wp-image-200\" srcset=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_15-2.png?w=840&amp;ssl=1 840w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_15-2.png?resize=300%2C58&amp;ssl=1 300w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_15-2.png?resize=768%2C147&amp;ssl=1 768w\" sizes=\"auto, (max-width: 840px) 100vw, 840px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"596\" src=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_16-2-1024x596.png?resize=1024%2C596&#038;ssl=1\" alt=\"\" class=\"wp-image-201\" srcset=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_16-2.png?resize=1024%2C596&amp;ssl=1 1024w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_16-2.png?resize=300%2C175&amp;ssl=1 300w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_16-2.png?resize=768%2C447&amp;ssl=1 768w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_16-2.png?w=1388&amp;ssl=1 1388w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"596\" src=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_17-2-1024x596.png?resize=1024%2C596&#038;ssl=1\" alt=\"\" class=\"wp-image-202\" srcset=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_17-2.png?resize=1024%2C596&amp;ssl=1 1024w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_17-2.png?resize=300%2C175&amp;ssl=1 300w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_17-2.png?resize=768%2C447&amp;ssl=1 768w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_17-2.png?w=1388&amp;ssl=1 1388w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"596\" src=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_18-2-1024x596.png?resize=1024%2C596&#038;ssl=1\" alt=\"\" class=\"wp-image-203\" srcset=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_18-2.png?resize=1024%2C596&amp;ssl=1 1024w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_18-2.png?resize=300%2C175&amp;ssl=1 300w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_18-2.png?resize=768%2C447&amp;ssl=1 768w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_18-2.png?w=1388&amp;ssl=1 1388w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Paso 4. Crear las vistas<\/h2>\n\n\n\n<p>Laravel utiliza <strong>Blade<\/strong> como motor de plantillas para las vistas. Vamos a crear las vistas necesarias para las operaciones CRUD.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">4.1. Vista para mostrar todos los registros (<code>index.blade.php<\/code>)<\/h3>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"594\" src=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_19-2-1024x594.png?resize=1024%2C594&#038;ssl=1\" alt=\"\" class=\"wp-image-204\" srcset=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_19-2.png?resize=1024%2C594&amp;ssl=1 1024w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_19-2.png?resize=300%2C174&amp;ssl=1 300w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_19-2.png?resize=768%2C446&amp;ssl=1 768w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_19-2.png?w=1384&amp;ssl=1 1384w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"596\" src=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_20-1-1024x596.png?resize=1024%2C596&#038;ssl=1\" alt=\"\" class=\"wp-image-205\" srcset=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_20-1.png?resize=1024%2C596&amp;ssl=1 1024w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_20-1.png?resize=300%2C175&amp;ssl=1 300w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_20-1.png?resize=768%2C447&amp;ssl=1 768w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_20-1.png?w=1384&amp;ssl=1 1384w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"596\" src=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_21-1-1024x596.png?resize=1024%2C596&#038;ssl=1\" alt=\"\" class=\"wp-image-206\" srcset=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_21-1.png?resize=1024%2C596&amp;ssl=1 1024w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_21-1.png?resize=300%2C175&amp;ssl=1 300w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_21-1.png?resize=768%2C447&amp;ssl=1 768w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_21-1.png?w=1388&amp;ssl=1 1388w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Paso 5. Definir las Rutas<\/h2>\n\n\n\n<p>Laravel permite definir las rutas de forma autom\u00e1tica utilizando el controlador de recursos. Aseg\u00farate de que las rutas est\u00e9n definidas en <code>routes\/web.php<\/code><\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"php\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">use App\\Http\\Controllers\\AseguradoraController;\n\nRoute::resource('aseguradoras', AseguradoraController::class);<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"680\" src=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_22-1-1024x680.png?resize=1024%2C680&#038;ssl=1\" alt=\"\" class=\"wp-image-208\" srcset=\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_22-1.png?resize=1024%2C680&amp;ssl=1 1024w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_22-1.png?resize=300%2C200&amp;ssl=1 300w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_22-1.png?resize=768%2C510&amp;ssl=1 768w, https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_22-1.png?w=1216&amp;ssl=1 1216w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Esto crear\u00e1 autom\u00e1ticamente todas las rutas necesarias para las operaciones CRUD.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusi\u00f3n<\/h2>\n\n\n\n<p>En este post, hemos aprendido c\u00f3mo convertir un c\u00f3digo SQL en su equivalente en Laravel utilizando <strong>migraciones<\/strong>, <strong>modelos<\/strong> y <strong>controladores<\/strong>. Implementamos las operaciones CRUD completas y creamos vistas usando <strong>Blade<\/strong> para mostrar, crear, editar y eliminar registros de la tabla <code>aseguradoras<\/code>.<\/p>\n\n\n\n<p>Laravel facilita enormemente el proceso de interactuar con bases de datos y realizar operaciones comunes como las que vimos en este post. \u00a1Si tienes alguna duda o comentario, no dudes en dejarlos abajo!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Laravel ofrece una forma poderosa y flexible para gestionar bases de datos utilizando su ORM Eloquent. En este post, te mostrar\u00e9 c\u00f3mo convertir el siguiente c\u00f3digo SQL en su equivalente en Laravel mediante migraciones, modelos y controladores. Vamos a construir la funcionalidad completa para la tabla aseguradoras. C\u00f3digo SQL original El siguiente c\u00f3digo SQL crea una tabla llamada aseguradoras con varios campos, como clave_aseguradora, nombre, fecha_inicial, fecha_final, y no_seguro Este c\u00f3digo SQL crea una tabla llamada aseguradoras con los siguientes campos: Paso 1. Crear la migraci\u00f3n Laravel ofrece una herramienta llamada Artisan que facilita la creaci\u00f3n de migraciones, modelos y&#8230;<\/p>\n","protected":false},"author":1,"featured_media":208,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[22],"tags":[],"class_list":["post-181","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-laravel"],"acf":[],"aioseo_notices":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>C\u00f3mo convertir un c\u00f3digo SQL en su Equivalente en el ORM de Laravel - L3oNeT.io<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"C\u00f3mo convertir un c\u00f3digo SQL en su Equivalente en el ORM de Laravel - L3oNeT.io\" \/>\n<meta property=\"og:description\" content=\"Laravel ofrece una forma poderosa y flexible para gestionar bases de datos utilizando su ORM Eloquent. En este post, te mostrar\u00e9 c\u00f3mo convertir el siguiente c\u00f3digo SQL en su equivalente en Laravel mediante migraciones, modelos y controladores. Vamos a construir la funcionalidad completa para la tabla aseguradoras. C\u00f3digo SQL original El siguiente c\u00f3digo SQL crea una tabla llamada aseguradoras con varios campos, como clave_aseguradora, nombre, fecha_inicial, fecha_final, y no_seguro Este c\u00f3digo SQL crea una tabla llamada aseguradoras con los siguientes campos: Paso 1. Crear la migraci\u00f3n Laravel ofrece una herramienta llamada Artisan que facilita la creaci\u00f3n de migraciones, modelos y...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/\" \/>\n<meta property=\"og:site_name\" content=\"L3oNeT.io\" \/>\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/L3onet\" \/>\n<meta property=\"article:published_time\" content=\"2024-10-23T03:51:15+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-10-23T03:51:17+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_22-1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1216\" \/>\n\t<meta property=\"og:image:height\" content=\"808\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Leonel Gonz\u00e1lez Vidales\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@L3onet\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Leonel Gonz\u00e1lez Vidales\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/\"},\"author\":{\"name\":\"Leonel Gonz\u00e1lez Vidales\",\"@id\":\"https:\/\/leonet.io\/#\/schema\/person\/cd71c969d24c0c22bd5d5eccc300d029\"},\"headline\":\"C\u00f3mo convertir un c\u00f3digo SQL en su Equivalente en el ORM de Laravel\",\"datePublished\":\"2024-10-23T03:51:15+00:00\",\"dateModified\":\"2024-10-23T03:51:17+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/\"},\"wordCount\":622,\"commentCount\":0,\"image\":{\"@id\":\"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_22-1.png?fit=1216%2C808&ssl=1\",\"articleSection\":[\"Laravel\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/\",\"url\":\"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/\",\"name\":\"C\u00f3mo convertir un c\u00f3digo SQL en su Equivalente en el ORM de Laravel - L3oNeT.io\",\"isPartOf\":{\"@id\":\"https:\/\/leonet.io\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_22-1.png?fit=1216%2C808&ssl=1\",\"datePublished\":\"2024-10-23T03:51:15+00:00\",\"dateModified\":\"2024-10-23T03:51:17+00:00\",\"author\":{\"@id\":\"https:\/\/leonet.io\/#\/schema\/person\/cd71c969d24c0c22bd5d5eccc300d029\"},\"breadcrumb\":{\"@id\":\"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/#primaryimage\",\"url\":\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_22-1.png?fit=1216%2C808&ssl=1\",\"contentUrl\":\"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_22-1.png?fit=1216%2C808&ssl=1\",\"width\":1216,\"height\":808},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Inicio\",\"item\":\"https:\/\/leonet.io\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"C\u00f3mo convertir un c\u00f3digo SQL en su Equivalente en el ORM de Laravel\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/leonet.io\/#website\",\"url\":\"https:\/\/leonet.io\/\",\"name\":\"L3oNeT.io\",\"description\":\"Mis notas de docencia\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/leonet.io\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/leonet.io\/#\/schema\/person\/cd71c969d24c0c22bd5d5eccc300d029\",\"name\":\"Leonel Gonz\u00e1lez Vidales\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/945928953407747c753c751893c91c9ed28de03f892fc88c78bb34dff3061378?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/945928953407747c753c751893c91c9ed28de03f892fc88c78bb34dff3061378?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/945928953407747c753c751893c91c9ed28de03f892fc88c78bb34dff3061378?s=96&d=mm&r=g\",\"caption\":\"Leonel Gonz\u00e1lez Vidales\"},\"sameAs\":[\"http:\/\/leonet.io\",\"https:\/\/www.facebook.com\/L3onet\",\"https:\/\/www.instagram.com\/L3onet\",\"https:\/\/x.com\/L3onet\"],\"url\":\"https:\/\/leonet.io\/index.php\/author\/leonet-io\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"C\u00f3mo convertir un c\u00f3digo SQL en su Equivalente en el ORM de Laravel - L3oNeT.io","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/","og_locale":"en_US","og_type":"article","og_title":"C\u00f3mo convertir un c\u00f3digo SQL en su Equivalente en el ORM de Laravel - L3oNeT.io","og_description":"Laravel ofrece una forma poderosa y flexible para gestionar bases de datos utilizando su ORM Eloquent. En este post, te mostrar\u00e9 c\u00f3mo convertir el siguiente c\u00f3digo SQL en su equivalente en Laravel mediante migraciones, modelos y controladores. Vamos a construir la funcionalidad completa para la tabla aseguradoras. C\u00f3digo SQL original El siguiente c\u00f3digo SQL crea una tabla llamada aseguradoras con varios campos, como clave_aseguradora, nombre, fecha_inicial, fecha_final, y no_seguro Este c\u00f3digo SQL crea una tabla llamada aseguradoras con los siguientes campos: Paso 1. Crear la migraci\u00f3n Laravel ofrece una herramienta llamada Artisan que facilita la creaci\u00f3n de migraciones, modelos y...","og_url":"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/","og_site_name":"L3oNeT.io","article_author":"https:\/\/www.facebook.com\/L3onet","article_published_time":"2024-10-23T03:51:15+00:00","article_modified_time":"2024-10-23T03:51:17+00:00","og_image":[{"width":1216,"height":808,"url":"http:\/\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_22-1.png","type":"image\/png"}],"author":"Leonel Gonz\u00e1lez Vidales","twitter_card":"summary_large_image","twitter_creator":"@L3onet","twitter_misc":{"Written by":"Leonel Gonz\u00e1lez Vidales","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/#article","isPartOf":{"@id":"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/"},"author":{"name":"Leonel Gonz\u00e1lez Vidales","@id":"https:\/\/leonet.io\/#\/schema\/person\/cd71c969d24c0c22bd5d5eccc300d029"},"headline":"C\u00f3mo convertir un c\u00f3digo SQL en su Equivalente en el ORM de Laravel","datePublished":"2024-10-23T03:51:15+00:00","dateModified":"2024-10-23T03:51:17+00:00","mainEntityOfPage":{"@id":"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/"},"wordCount":622,"commentCount":0,"image":{"@id":"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_22-1.png?fit=1216%2C808&ssl=1","articleSection":["Laravel"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/","url":"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/","name":"C\u00f3mo convertir un c\u00f3digo SQL en su Equivalente en el ORM de Laravel - L3oNeT.io","isPartOf":{"@id":"https:\/\/leonet.io\/#website"},"primaryImageOfPage":{"@id":"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/#primaryimage"},"image":{"@id":"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_22-1.png?fit=1216%2C808&ssl=1","datePublished":"2024-10-23T03:51:15+00:00","dateModified":"2024-10-23T03:51:17+00:00","author":{"@id":"https:\/\/leonet.io\/#\/schema\/person\/cd71c969d24c0c22bd5d5eccc300d029"},"breadcrumb":{"@id":"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/#primaryimage","url":"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_22-1.png?fit=1216%2C808&ssl=1","contentUrl":"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_22-1.png?fit=1216%2C808&ssl=1","width":1216,"height":808},{"@type":"BreadcrumbList","@id":"https:\/\/leonet.io\/index.php\/2024\/10\/23\/como-convertir-un-codigo-sql-en-su-equivalente-en-el-orm-de-laravel\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Inicio","item":"https:\/\/leonet.io\/"},{"@type":"ListItem","position":2,"name":"C\u00f3mo convertir un c\u00f3digo SQL en su Equivalente en el ORM de Laravel"}]},{"@type":"WebSite","@id":"https:\/\/leonet.io\/#website","url":"https:\/\/leonet.io\/","name":"L3oNeT.io","description":"Mis notas de docencia","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/leonet.io\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/leonet.io\/#\/schema\/person\/cd71c969d24c0c22bd5d5eccc300d029","name":"Leonel Gonz\u00e1lez Vidales","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/945928953407747c753c751893c91c9ed28de03f892fc88c78bb34dff3061378?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/945928953407747c753c751893c91c9ed28de03f892fc88c78bb34dff3061378?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/945928953407747c753c751893c91c9ed28de03f892fc88c78bb34dff3061378?s=96&d=mm&r=g","caption":"Leonel Gonz\u00e1lez Vidales"},"sameAs":["http:\/\/leonet.io","https:\/\/www.facebook.com\/L3onet","https:\/\/www.instagram.com\/L3onet","https:\/\/x.com\/L3onet"],"url":"https:\/\/leonet.io\/index.php\/author\/leonet-io\/"}]}},"jetpack_featured_media_url":"https:\/\/i0.wp.com\/leonet.io\/wp-content\/uploads\/2024\/10\/plantilla_22-1.png?fit=1216%2C808&ssl=1","jetpack-related-posts":[],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/leonet.io\/index.php\/wp-json\/wp\/v2\/posts\/181","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/leonet.io\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/leonet.io\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/leonet.io\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/leonet.io\/index.php\/wp-json\/wp\/v2\/comments?post=181"}],"version-history":[{"count":4,"href":"https:\/\/leonet.io\/index.php\/wp-json\/wp\/v2\/posts\/181\/revisions"}],"predecessor-version":[{"id":209,"href":"https:\/\/leonet.io\/index.php\/wp-json\/wp\/v2\/posts\/181\/revisions\/209"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/leonet.io\/index.php\/wp-json\/wp\/v2\/media\/208"}],"wp:attachment":[{"href":"https:\/\/leonet.io\/index.php\/wp-json\/wp\/v2\/media?parent=181"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/leonet.io\/index.php\/wp-json\/wp\/v2\/categories?post=181"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/leonet.io\/index.php\/wp-json\/wp\/v2\/tags?post=181"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}