2010-07-05 8 views
0

게임을위한 간단한 편집기를 작성하고, 생물 간의 관계를 관리합니다. 생물 표는 ID, 이름 등과 부울 is_prey 열로 설정됩니다. 내가 무엇을 필요로하는지 알아내는 것입니다. a) ORM 관계가 동일한 테이블의 ID 사이에 정의 될 수 있습니다. b) is_prey로 표시된 노드 만 포함하도록 '사용 가능한'다른 노드를 제한하는 방법.동일한 테이블에 대한 참조

사용 시나리오는 다음과 같습니다. 생물 표에 세 생물이 포함되어 있습니다. 상어 (ID 1), 고래 (ID 2) 및 참치 (ID 3). 참치는 먹을 수 있습니다 (상어 옆 및 is_prey 표시). 이제 상어가 CMS에로드됩니다. 참치 만 옵션으로 나열한 "사용 가능한 먹이"확인란이 나타납니다.

이 먹이 맵은 어떻게 저장됩니까 (테이블 구조)?

감사합니다.

CREATE TABLE creature (
    id INT, 
    name tinytext 
); 

    CREATE TABLE prey (
    predator INT, 
    prey INT, 
    FOREIGN KEY predator REFERENCES creature (id), 
    FOREIGN KEY prey REFERENCES creature (id) 
); 

이 방법 : Kohana 2.3.4

답변

0

와 함께 시원한 crud_scaffolding 모듈을 사용하여

임 난 당신이 여기에 두 테이블하는 생물 테이블과 포식자 - 먹이 관계를 나타내는 테이블 필요가 있다고 생각 , 생물은 하나 이상의 생물에게 먹이가 될 수 있습니다.

나는 코 하나 (Kohana)를 알지 못하므로 혼자 있습니다.

+0

어떤 SQL 구문입니까? 모든 NULL 가능 열, 키 없음 (외부 키 참조없이 키가 작동하는 방식), 외부 키 열은 괄호 안에 들어 있지 않음 – onedaywhen

+1

이것은 표준이 아닙니다. 이것은 사람이 일할 수있는 것을 의미합니다. – Kalium

관련 문제