Foros del Web » Programando para Internet » PHP »

Clave foranea en laravel

Estas en el tema de Clave foranea en laravel en el foro de PHP en Foros del Web. Saludos tengo las siguientes 2 tablas creadas siguiendo el proceso de php artisan model (yo aqui puse para una Movie y para la otra Geners) ...
  #1 (permalink)  
Antiguo 26/07/2015, 12:58
 
Fecha de Ingreso: marzo-2014
Mensajes: 64
Antigüedad: 10 años, 8 meses
Puntos: 1
Clave foranea en laravel

Saludos tengo las siguientes 2 tablas creadas siguiendo el proceso de php artisan model (yo aqui puse para una Movie y para la otra Geners) y como sabran se crea una tabla con el nombre movies y otra geners
En movies tengo
Código PHP:
Ver original
  1. public function up()
  2.     {
  3.         Schema::create('movies', function(Blueprint $table)
  4.         {
  5.             $table->increments('id');
  6.             $table->string('name');
  7.             $table->string('cast');
  8.             $table->string('direction');
  9.             $table->string('duration');
  10.             $table->integer('genre_id')->unsigned();
  11.             $table->foreign('genre_id')->references('id')->on('genres');
  12.             $table->timestamps();
  13.         });
  14.     }
y en geners
Código PHP:
Ver original
  1. $table->increments('id');
  2.             $table->string('genre');
  3.             $table->timestamps();

El problema que tengo es que al ejecutar el comando php artisan migrate
me aparece un mensaje que me dice

[Illuminate\Database\QueryException]
SQLSTATE[HY000]: General error: 1215 Cannot add foreign key constraint (SQL
: alter table `movies` add constraint movies_genre_id_foreign foreign key (
`genre_id`) references `genres` (`id`))

Por el mensaje entiendo que tengo mal la relacion, pero incluso el uso de clave foranea lo tome desde la documentacion de laravel y videotutorial. Espero y me puedan ayudar saludos
  #2 (permalink)  
Antiguo 26/07/2015, 13:31
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 11 años, 4 meses
Puntos: 379
Respuesta: Clave foranea en laravel

La declaración de las restricciones van al final de cualquier declaración de columna
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #3 (permalink)  
Antiguo 26/07/2015, 14:17
 
Fecha de Ingreso: marzo-2014
Mensajes: 64
Antigüedad: 10 años, 8 meses
Puntos: 1
Respuesta: Clave foranea en laravel

Saludos, oye, cambie eso y me sigue pasando lo mismo
Código PHP:
Ver original
  1. public function up()
  2.     {
  3.         Schema::create('movies', function(Blueprint $table)
  4.         {
  5.             $table->increments('id');
  6.             $table->string('name');
  7.             $table->string('cast');
  8.             $table->string('direction');
  9.             $table->string('duration');
  10.             $table->timestamps();
  11.            
  12.             $table->integer('genre_id')->unsigned();
  13.             $table->foreign('genre_id')->references('id')->on('genres');
  14.         });
  15.     }

Etiquetas: clave, laravel, sql, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:08.