una modificar migrar migraciones migracion especifica ejecutar php laravel laravel-4 laravel-3

php - modificar - Agregue una nueva columna a la tabla existente en una migración



migrar laravel (6)

Realmente no puedo entender cómo agregar una nueva columna a mi tabla de salida en mi base de datos usando PHP laravel framework.

Intenté editar el archivo de migración para

public function up() { Schema::create(''users'', function($table){ $table->integer("paid"); }); }

y en terminal php artisan migrate:install y migrate

¿Cómo agregar nuevas columnas?


Añadiré la respuesta de mike3875 para futuros lectores que utilicen Laravel 5.1 y posterior.

Para hacer las cosas más rápido, puede usar la bandera "--table" de esta manera:

php artisan make:migration add_paid_to_users --table="users"

Esto agregará el contenido del método up y down automáticamente:

/** * Run the migrations. * * @return void */ public function up() { Schema::table(''users'', function (Blueprint $table) { // }); }

De forma similar, puede usar la opción --create["table_name"] al crear nuevas migraciones que agregarán más texto repetitivo a sus migraciones. Pequeño punto, pero útil cuando se hacen montones de ellos.


Para crear una migración, puede usar el comando migrate: make en la CLI de Artisan. Use un nombre específico para evitar chocar con los modelos existentes

para Laravel 3:

php artisan migrate:make add_paid_to_users

para Laravel 5+:

php artisan make:migration add_paid_to_users

Luego debe usar el método Schema::table() (ya que está accediendo a una tabla existente, no creando una nueva). Y puede agregar una columna como esta:

public function up() { Schema::table(''users'', function($table) { $table->integer(''paid''); }); }

y no te olvides de agregar la opción de reversión:

public function down() { Schema::table(''users'', function($table) { $table->dropColumn(''paid''); }); }

Luego puede ejecutar sus migraciones:

php artisan migrate

Todo esto está bien cubierto en la documentación para ambos Laravel 3:

Y para Laravel 4 / Laravel 5:

Editar:

use $table->integer(''paid'')->after(whichever_column); para agregar este campo después de una columna específica.


Puede agregar nuevas columnas dentro del método inicial de Schema::create esta manera:

Schema::create(''users'', function($table) { $table->integer("paied"); $table->string("title"); $table->text("description"); $table->timestamps(); });

Si ya ha creado una tabla, puede agregar columnas adicionales a esa tabla creando una nueva migración y utilizando el método Schema::table :

Schema::table(''users'', function($table) { $table->string("title"); $table->text("description"); $table->timestamps(); });

La documentación es bastante minuciosa sobre esto, y no ha cambiado demasiado de la versión 3 a la versión 4 .


Si está utilizando Laravel 5, el comando sería;

php artisan make:migration add_paid_to_users

Todos los comandos para hacer cosas (controladores, modelos, migraciones, etc.) se han movido bajo el comando make: .

php artisan migrate sigue siendo el mismo sin embargo.


esto se trabaja en laravel 5.1.

primero, en tu terminal ejecuta este código

php artisan make:migration add_paid_to_users --table=users

después de eso vaya al directorio de su proyecto y expanda la base de datos del directorio - migración y edite el archivo add_paid_to_users.php, agregue este código

public function up() { Schema::table(''users'', function (Blueprint $table) { $table->string(''paid''); //just add this line }); }

Después de eso regrese a su terminal y ejecute este comando

php artisan migrate

espero que esto ayude.


simplemente puede modificar su archivo de migración existente, por ejemplo, agregar una columna en su tabla, y luego en su terminal escribiendo:

$ php artisan migrate:refresh