Tengo este problema con las relaciones con Codeigniter DataMapper. Tengo un modelo Interview
que tiene un author_id
y un interviewee_id
. Ambos se relacionan con la identificación del usuario en el modelo de usuario.CodeIgniter/Datamapper: Dos relaciones de uno a muchos para la misma tabla que no funciona
He estado intentando varios enfoques y ninguno funciona; esto es lo que tengo en este momento:
class Interview extends DataMapper
{
var $has_one = array(
'interviewee' => array(
'class' => 'user',
'other_field' => 'done_interview'),
'author' => array(
'class' => 'user',
'other_field' => 'written_interview')
);
}
class User extends DataMapper
{
var $has_many = array(
'done_interview' => array(
'class' => 'interview',
'other_field' => 'interviewee'),
'written_interview' => array(
'class' => 'interview',
'other_field' => 'author')
);
}
¿Cómo dejo DataMapper sabe que una relación va a ir a través de author_id
, y el otro a través interviewee_id
?
Parece que es necesario que haya un campo 'user_id' necesariamente y luego para las otras relaciones puedo nombrar los campos como yo quiera. Así que cambiar 'interviewee_id' a' user_id' parece hacer el ejercicio. Por si acaso alguien tiene el mismo problema. – Nelo
Por favor, siéntase libre de publicar una respuesta a su propia pregunta para ayudar a otros, si eso resuelve su problema: [respuesta]. Puede [aceptar] (http://meta.stackexchange.com/a/5235/159834) después de un día o dos si no hay mejores respuestas. –
Combatiendo esto, esperando que @Nelo cree y acepte una respuesta para eliminar esto de las consultas "No respondidas". – swatkins