뷰의 머신 이름을 표시 / 편집하는 방법


18

뷰의 머신 이름을 표시 / 편집하는 방법

묻는 이유는 뷰 복제를 시도했지만 이미 사용한 이름이 거부되었지만 위치를 볼 수 없기 때문에 거부했습니다.

답변:


16

보기 내보내기, 값 변경, 원본 삭제 및보기 다시 가져 오기를 수행 할 수 있습니다.

보기 목록 페이지에 가져 오기 옵션이 있습니다. 이 URL을 현재 URL 뒤에 붙여 넣으면 가져 오기 조회 페이지가 표시됩니다. 태그를 보면 Drupal 7을 사용한다고 가정하므로 아래 URL은 Drupal 7에서만 작동합니다.

추가 할 URL은 다음과 같습니다.

#overlay=admin/structure/views/import

보기를 내보내려면

  1. / admin / structure / views로 이동

  2. '작업'열 아래에서 화살표를 클릭하고 '내보내기'를 선택하십시오.

  3. 외부 편집기에서 코드 복사 및 편집 / 변경

  4. / admin / structure / views / import로 이동하여 변경된보기 가져 오기 먼저 기존보기를 삭제하거나 가져 오기 설정에서 '기존 이름이 동일한 경우 기존보기 바꾸기'를 선택하십시오.


뷰를 내보내는 과정을 설명해 주시겠습니까?
niksmac

지름길 컷 방법
monymirza

/ admin / structure / views / import
Zdenko Vujasinovic

1
@ nikhil-m보기를 내보내려면 : 1. / admin / structure / views로 이동합니다. 2. 'operations'열 아래에서 화살표를 클릭하고 'export'를 선택합니다. 3. 외부 편집기에서 코드를 복사하고 편집 / 변경합니다. 4. got / admin / 구조 / 뷰 / 가져 오기 및 가져 오기 먼저 가져 오기 설정에 '하나가 같은 이름으로 존재하는 경우 기존 뷰를 바꿉니다'보기를 기존 삭제하거나 선택할 수 있습니다보기 변경
즈 덴코 부자 시노 비치

내 질문에 완전히 대답하기 때문에 +1로 허용되는 답변으로 변경 : 1. 컴퓨터 이름을보고 2. 편집하십시오. 또한이 솔루션은 최소한의 코드와 설정이 필요하기 때문에 작성해야합니다 (코드 작성 및 종속성 없음). 또한 뷰 자체를 내보내는 방법을 보여줍니다. Drupal 사이트의 자동 빌드 (drush, drush make 포함), 소스 코드 관리 및 기존 뷰에서 유사한 뷰를 빠르게 만드는 데 매우 유용하다고 생각합니다. 감사합니다!
therobyouknow

9

적어도 UI에서는 볼 수없는 뷰의 시스템 이름을 변경할 수 있다고 생각하지 않습니다. "링크 편집"위로 마우스를 가져 가면 URL에서 컴퓨터 이름을 볼 수 있습니다.


확인해 볼게요
therobyouknow

+1 & @mototribe이 승인되었습니다. 그들은 부끄러워하지 않고 영구적으로 표시 할 수 없었습니다.
therobyouknow

업데이트 : 좋은 부분 솔루션-감사합니다-승인 된 플래그를 컴퓨터 이름을 변경하는 솔루션을 제공하는 다른 답변으로 옮겼습니다.
therobyouknow

6

새 시스템 이름으로 복제 할 수 있습니다.

업데이트 : View의 머신 이름을 표시하는 방법.
이 코드를 사용하여 Drupal 설치의 모든 뷰 목록을 볼 수 있습니다.

$views = views_get_all_views();
// Optional: views objects are big so unset large members
foreach ($views as $machine_name => $view) {
  unset($view->display, $view->localization_plugin);
  $views[$machine_name] = $view;
}
// Print array keyed by views machine name
dpm($views);

이 코드를 페이지에서 실행할 수 있습니다 devel/php( Devel 모듈 필요 ).
컴퓨터 이름별로 키보기가 인쇄되어 손실 된보기를 찾을 수 있습니다.

업데이트 : Drupal 7의보기 목록 페이지에서 컴퓨터 이름으로보기를 검색 할 수 있습니다.이를 위해보기 설정에서 "보기 목록에 필터 표시"플래그를 켜야합니다.


1
문제는 "뷰의 머신 이름을 어떻게 표시 / 편집합니까?"입니다.
kiamlaluno

+1 @kiamlaluno. kalabro 나는 이것을 달성하기 위해 약간의 커스텀 코드가 필요하다는 것에 놀랐다.
therobyouknow

이것은 일회성 디버그 코드이며, 뷰를 살펴보기 위해 실행할 수 있습니다. 표준보기 목록에보기의 machine_name이있는 열이 없습니다. 일부 뷰는 코드에 저장되므로 모든 뷰가있는 DB 테이블이 없습니다.
kalabro

4

$page["#views_contextual_links_info"]["views_ui"]["view_name"] -이 변수를 사용하면 뷰의 머신 이름을 얻을 수 있습니다.


0

데이터베이스 의 views_view 테이블에서 이름 필드 의 을 변경할 수 있습니다 . 패널과 같이 사이트 일부의 블록 / 페이지에 대한 참조를 깨뜨릴 수 있기 때문에 항상 최선의 아이디어는 아닙니다.


끔찍한 조언이 사이트를 망칠 것입니다.
Danny Englander

당신이 그것에 대해 똑똑하고 블록 / 창 / 등을 교체하지 않는다면 아닙니다. 복제만큼 많은 작업
Mark Cameron

0

뷰를 생성 한 후 머신 이름을 변경할 수 있다고 생각하지 않으며 머신 이름을 찾는 것이 전혀 직관적이지 않습니다. 기계 이름을 필요로하는 사람은 프로그래머와 상당히 고급화 된 고급 사용자 일 뿐이므로 다른 사람이 인터페이스를 쉽게 이해할 수 있도록 난독 처리를 할 수 있기 때문일 수 있습니다.

보기의 기계 이름을 찾으려면보기 목록으로 이동하여 행의 일부를 마우스로 누르십시오. 편집 버튼 일 필요는 없습니다. 이것은 공식 JavaScript 마우스 오버가 아니므로 브라우저가 내가 보거나 전혀 렌더링하지 않는 것과 다른 방식으로 렌더링하도록 선택할 수 있습니다. 이 경우 HTML 소스를 들여다 볼 수 있으며보고있는 뷰 행의 태그에는 다음과 같은 제목 속성이 있음을 알 수 있습니다.

뷰 내에서 디스플레이의 머신 이름을 원한다면 조금 더 쉽습니다. 뷰 편집 인터페이스의 고급 블록에 있습니다. 어딘가에 있고 "machine_name"이라는 레이블이 붙어있어이를 알아낼 특별한 트릭이 없습니다. 뷰의 머신 이름과 달리이 머신 이름을 변경할 수 있습니다.

뷰의 머신 이름을 변경해야한다면 어떻게해야합니까? 글쎄, 데이터베이스에 문제가 생겨 수동으로 편집하여 사용되는 모든 곳의 컴퓨터 이름을 업데이트 할 수는 있지만 내 생각에는 너무 많은 문제가 있습니다. 훨씬 쉬운 방법이 있습니다. 뷰를 복제하고 실제로 원하는 머신 이름을 지정하십시오. 복제 된 후 컴퓨터 이름이 잘못된 원래 컴퓨터를 삭제할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.