2011-12-04 3 views
0

을 나는 2 개 테이블 내가 함께이 두 테이블을 연결해야하는 설정 관계 식료품 CRUD

Users Table => id , username 
OrdersTable => order_id,user_id, qty,total 

있습니다.

id 및 user_id.

식료품 점 CRUD로 어떻게 할 수 있습니까?

+0

행운을 문제가 해결 되었습니까? –

+0

nope. 아마도 주문 테이블 CRUD에 대한 Grocery_crud 우회 – sodhancha

+0

아마도 당신은 내 대답에 해결책을 시도? –

답변

3

당신이 기본 테이블로 OrdersTable을 사용하는 경우, 당신은 set_relation()를 사용하여 1:1 관계를 사용할 수 있습니다. 이는 주문을보고 주문이 속한 사용자를보고/설정하고자하는 경우입니다.

$crud->set_table('OrdersTable'); 
$crud->set_relation('id','UsersTable','username'); 

이렇게하면 특정 주문에 대한 사용자를 선택할 수 있습니다.

그러나 아마도 사용자에게는 많은 주문 - 1:n 관계가있을 수 있습니다. UsersTable이 기본 테이블 인 경우, 즉 CRUD에서 user을보고 관련된 모든 광고 주문을보고 싶다는 뜻입니다.

이 방법을 사용하려면 두 개의 기존 테이블을 연결하는 중개 테이블과 기존 테이블 구조를 약간 변경해야합니다. OrdersTable에서 user_id을 삭제해야합니다. 중간 테이블은 UserOrdersTable이라는 인수를 위해 다음과 같은 열이 필요합니다.

user_id INT 
order_id INT 
priority INT 

그런 다음 set_relation_n_n() 방법을 사용하여 관계를 추가 할 수 있습니다.

OrdersTable을 볼 때 set_relation_n_n() 전화를 되돌릴 수 있으므로 어떤 사용자가 주문했는지 확인할 수 있습니다.

요약하면 을 사용하여 1:n 관계를 사용하면 사용자 및 주문에 대한 주문을 볼 수 있습니다.

-1

검색어를 의미하는 경우;

 
select u.id, u.username, o.order_id, o.qty, o.total 
from users u 
left join orders o on(o.user_id = u.id) 
where 1=1 
+0

http://www.grocerycrud.com/ codeigniter CRUD 라이브러리 사용을 의미했습니다. – sodhancha

관련 문제