1
나는 두 모델 사이의 다 대다 관계를 만들려고 노력
: Users_Role 및 Users_RightKohana 3.2 ORM 대다 - 잘못된 필드 이름
class Model_Users_Role extends ORM{
protected $_has_many = array(
'rights' => array(
'model' => 'users_right',
'through' => 'users_roles_rights',
),
);
}
class Model_Users_Right extends ORM{
protected $_has_many = array(
'roles' => array(
'model' => 'users_role',
'through' => 'users_roles_rights',
),
);
}
나는이 할 노력하고있어 :
을$role = ORM::factory('users_role', 1);
$right = ORM::factory('users_right', 1);
$right->add('roles', $role);
오류 : 나는 t을 tryed
Database_Exception [ 1054 ]: Unknown column 'role_id' in 'field list' [ INSERT INTO `users_roles_rights` (`users_right_id`, `role_id`) VALUES ('1', '1') ]
$role = ORM::factory('users_role', 1);
$right = ORM::factory('users_right', 1);
$role->add('rights', $right);
새로운 오류 : O는 다른 측면에서 만들 내가 ORM은 피벗 테이블에서 users_role_id
및 users_right_id
필드 이름을 사용할 것으로 예상
Database_Exception [ 1054 ]: Unknown column 'right_id' in 'field list' [ INSERT INTO `users_roles_rights` (`users_role_id`, `right_id`) VALUES ('1', '1') ]
을하지만, 지금까지 키의 잘못된 이름을 사용? 내가 실수 한 곳?
배열에 'far_key'를 추가했는데 데이터가 성공적으로 추가되었습니다. 하지만 두 번째로 같은 관계를 추가하려고하면 kohana 광고가 피벗 테이블에 하나 더 같은 행을 추가합니다. 왜? – user1151990