모듈에 의해 생성 된 테이블이 있습니다. 필드의 일부를 기존보기에 포함시켜야합니다.Views에 테이블 노출
the table wizard module을 사용해 보았지만 그 작업은 모두 해당 테이블에 대한 별도의보기를 만드는 것입니다. 그 테이블에서 필드를 선택하여 추가 필드로 기존 뷰에 추가하거나 관계 또는 이와 유사한 것을 통해 필드를 추가 할 수 있기를 원합니다. 내가하려고하는 일을 해결할 방법이 있습니까?
모듈에 의해 생성 된 테이블이 있습니다. 필드의 일부를 기존보기에 포함시켜야합니다.Views에 테이블 노출
the table wizard module을 사용해 보았지만 그 작업은 모두 해당 테이블에 대한 별도의보기를 만드는 것입니다. 그 테이블에서 필드를 선택하여 추가 필드로 기존 뷰에 추가하거나 관계 또는 이와 유사한 것을 통해 필드를 추가 할 수 있기를 원합니다. 내가하려고하는 일을 해결할 방법이 있습니까?
아. 조회수. 나도 잠시 나갔다. 이 답변은 드루팔 (Drupal 6)을위한 것이며 추상은 필드를 정의하는 방법과 필드를 노드 테이블에 링크 할 수 있도록 관계를 사용하는 방법을 보여줍니다.
function modulename_views_data() { $data['modulename_table'] = array( 'table' => array( 'group' => 'ModuleName', 'title' => 'Module name title', ), 'join' => array( // to join to node, we'll use a field in modulename_table called 'nid' 'node' => array( 'left_field' => 'nid', 'field' => 'nid', ), ), ); // now we define the fields in the table like this // check out modules/views/handlers to see more specific handlers $data['modulename_table']['fieldname'] = array( 'title' => 'fieldname', 'help' => 'fieldname description', 'field' => array( 'handler' => 'views_handler_field', ), ); $data['modulename_table']['nid'] = array( 'title' => 'related node', 'help' => 'the field that relates back to {node}', // here we implement a relationship to nid 'relationship' => array( 'base' => 'node', 'field' => 'nid', 'handler' => 'views_handler_relationship', 'label' => 'modulename row node', ), // this relationship can be turned on in views ); return $data; }
hook_views_data를 사용하여 코드에서 테이블을 정의 할 수 있습니다. 보기에서 특수 조작을 원하지 않는 한 스키마 API를 사용하여 테이블을 정의하는 것만 큼 간단합니다.
:
function modulename_views_api() {
return array(
'api' => 2,
);
}
는 그런 다음라는 파일 modulename.views.inc을하고이 같은 함수를 정의하려면 :
는 modulename.module 내부, 당신이가는 기능을 원하는 다른 옵션은 테이블 마법사를 사용하여 테이블을 데이터베이스에 노출 한 다음 마이그레이션 모듈을 사용하여 뷰를 만드는 것입니다. http://drupal.org/project/migrate
나는 Views Custom Field 모듈이 나에게 어쩌면 내가 이전에 대해 생각
.. 도움을 줄 ..보기에 괴짜 필드를 추가로까지 그냥 내가 필요 아무것도 수행 할 수 있음을 발견했다, 그러나 이것은 라이브입니다 표. 그렇다면 기존 데이터 만 이전 할 수 있습니까? 마이그레이션 후 테이블에 추가되는 새로운 데이터는 어떻습니까? – Berming