🎉 Acceso anticipado Black Friday: Hasta un 80% de descuento en nuestros cursos

4d: 5h: 46m:29s'
Pablo Vera
Pablo Vera
Laravel
Comparte:

Relaciones con tabla de multiles primary keys

Hola,
todos conocemos las variantes de relaciones con:
$this->hasMany('App\Comment', 'foreign_key', 'local_key');
y tambien con:
$this->belongsTo('App\Post', 'foreign_key', 'local_key');

Pero mi pregunta es: si quisiera hacer la relación con una tabla, la cual tenga 2 o mas columnas que son primary key, cómo se pueden generar estas relaciones?
Gracias.
Jorge Davila
Jorge Davila (838 xp)
Estas confundiendo la estructura de una base de datos relacional. Una tabla debe tener solo una columna que actúe como primary key. Probablemente tu te refieres a foreign keys, en cuyo caso basta con que exista una primary key que empate con esta  en otra tabla.
Pablo Vera
Pablo Vera (1422 xp)
Hola Jorge, gracias por tu respuesta.
A veces las tablas poseen mas de 1 primary key pq el negocio lo necesita asi, no basta con solo 1 columna id, ya que la unicidad es compuesta. 
En ese caso ¿Como se podria lograr las relaciones en laravel?
Gracias de antemano
Mario Ramon Antonino
Mario Ramon Antonino (42 xp)
Hola Pablo, tengo entendido que laravel no soporta llaves primarias compuestas, lo que para mi es algo bastante limitante.
1
Jorge Davila
Jorge Davila (838 xp)
Segun recuerdo puedes definirla pero no puedes usarla en queries, tienes que hacer raw queries para obtener un resultado.