모듈의 Drupal 7 스키마에 문제가 있습니다. 4 개의 표가 있지만 표본 2의 경우 충분합니다.Drupal 7 스키마의 외래 키
function mymodule_schema() {
$schema['series'] = array(
'fields' => array(
'id' => array(
'type' => 'serial',
'unsigned' => true,
'not null' => true,
),
'name' => array(
'type' => 'varchar',
'length' => 255,
'not null' => true,
),
),
'unique keys' => array(
'name' => array('name'),
),
'primary key' => array('id'),
);
$schema['sermon'] = array(
'fields' => array(
'id' => array(
'type' => 'serial',
'unsigned' => true,
'not null' => true,
),
'title' => array(
'type' => 'varchar',
'length' => 255,
'not null' => true,
),
'series_id' => array(
'type' => 'int',
),
),
'foreign keys' => array(
'series_id' => array(
'table' => 'series',
'columns' => array('series_id' => 'id'),
),
),
'primary key' => array('id'),
);
return $schema;
}
이 코드는 외래 키가 아닌 테이블을 만듭니다. 구현 예 나는 Drupal.org에서 얻을 : http://drupal.org/node/146939
드루팔 버전 7.0 베타 3 ..As 생각 : 아마, 아직 구현되지 않은, 내가 node
테이블에 표시되지 않습니다 (문서의 예를 들어 포인트를 설치 프로그램에서 코드 작성).
도움 주셔서 감사합니다. 그들은 눈에 띄게이를 명시하지 않지만, 분명히, 외래 키 선언은 단지 순간에 문서를 목적으로하는 이유/
나는 아무 생각이 없다 (그리고 : 당신이 올바른 생각을 가지고
도움을 줄 수 있습니다. sermon.id를'sermon_id'로 변경하고 series.id를'series_id' 또는 다른 것으로 변경할 수 있습니다. 이제 날 호기심에 사로 잡혔다. :) –
zourtney, 어제 (지금은 나를위한 밤이야),하지만 문제가 (이상한, 테이블 + fieldname이 충분해야하고 원시 SQL 문이 올바른 일을하더라도) 어제 시도해 보겠습니다.이 이름에 대한 해결책이 필요합니다. 스키마가 제 3 자에 의해 제공되고 프로덕션 환경에서 스키마를 변경할 수 없기 때문입니다. – lifecoder
좋아, 그 생각 잊어; 나는 이것이 실제로 그것을 Drupal로 구현하지 않았다고 생각한다. 나는 아래에 게시물을 만들었습니다. 나는이 문제에 대해 어느 정도 전까지 만난다는 것을 기억한다. 나는 "해결책"을 잘못 기억 한 것처럼 보일 것입니다. –