Tôi gặp sự cố này với các mối quan hệ với Mã số DataMapper của Codeigniter. Tôi có mẫu Interview
có author_id
và interviewee_id
. Cả hai đều liên quan đến id người dùng trong mô hình người dùng.CodeIgniter/Datamapper: Hai mối quan hệ một-nhiều với cùng một bảng không hoạt động
Tôi đã thử một số cách tiếp cận và không hoạt động; đây là những gì tôi có ngay bây giờ:
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')
);
}
Làm thế nào để chúng ta hãy DataMapper biết rằng một mối quan hệ sẽ đi qua author_id
, và người kia qua interviewee_id
?
Có vẻ như cần phải có trường 'user_id' nhất thiết và sau đó cho các mối quan hệ khác tôi có thể đặt tên cho các trường theo mặc định tôi muốn. Vì vậy, việc thay đổi 'interviewee_id' thành' user_id' dường như thực hiện thao tác khoan. Chỉ trong trường hợp ai đó gặp vấn đề tương tự. – Nelo
Vui lòng đăng câu trả lời cho câu hỏi của riêng bạn để giúp người khác, nếu điều đó giải quyết được vấn đề của bạn: [answer]. Bạn có thể [chấp nhận] (http://meta.stackexchange.com/a/5235/159834) sau một hoặc hai ngày nếu không có câu trả lời nào tốt hơn. –
Bumping này, hy vọng rằng @Nelo sẽ tạo ra và chấp nhận một câu trả lời để loại bỏ điều này từ các truy vấn "Unanswered". – swatkins