it-swarm-ko.tech

Node 참조 자동 완성보기 문제

첫째, 잘못된 용어를 사용하면 사과드립니다. 나는 여전히 Drupal newbie!

저는 Drupal 6 CCK, Views, Date, Calendar, Link, Location 및 GMap을 사용하여 밴드 웹 사이트를 만들고 있습니다. 여기에는 Gig와 Venue라는 두 가지 콘텐츠 유형이 있습니다.

"장소"콘텐츠 유형에는 모든 주소 정보를 저장하는 위치 필드가 있습니다. 또한 "Venue Website"(field_venue_website)와 같은 다른 필드도 있습니다.

"공연 만들기"페이지의 자동 완성 필드가 "장소"콘텐츠 유형에서 기존 장소를 조회하고 다음 형식으로 자동 완성 드롭 다운 목록에 장소를 표시하고 싶습니다.

[위치 이름], [도시], [국가]

그러나 Gig 페이지에서 사용할 수 있도록 더 많은 정보를 추출하고 싶습니다.

[위치 이름] <-가급적 장소 페이지 링크로 [거리] [추가] [도시] [주 /도] [우편 번호] [국가] [회장 웹 사이트] <-이것은 별도의 필드임을 기억하십시오. 위치 필드가 아닙니다.

다음을 수행하여 부분적으로 내 목표에 도달했습니다.

  • Node reference) 유형의 "장소"필드 (field_gig_venue)를 만들었습니다.
  • 다음과 같이 필드를 설정합니다.
    • 자동 완성 일치 : 포함
    • 텍스트 필드 크기 : 100
    • 필수 : 끄기 (나중에 변경할 수 있음)
    • 값 수 : 1
    • 노드를 선택하는 데 사용되는보기 : 장소 _ 검색
  • 다음 설정으로보기 (venue_search)를 만들었습니다.
    • 행 스타일 : 필드
    • 인라인 필드 :
    • 위치 명
    • 위치 : 도시
    • 위치 : 국가
    • 구분 기호 :,
    • 빈 필드 숨기기 : 예
    • 관계 :
    • 내용 : 장소
    • 필드 :
    • 위치 명
    • 위치 : 도시
    • 위치 : 국가
    • 노드 : 제목 (디스플레이에서 제외 : 예)
    • 필터 :
    • 노드 : 유형 = 장소

그러면 필요에 따라 자동 완성 드롭 다운 목록이 표시됩니다. 제출시 결과는 행사장 페이지 링크로 [위치 명]입니다.

그러나 자동 완성으로 인식되는 장소의 유일한 부분은 [위치 이름]입니다. 예를 들어 다음과 같이 두 개의 장소가있는 경우 :

Kentish Town Forum, 런던, 영국

Tunbridge Wells Forum, 영국 켄트

"포럼"을 입력하기 시작하면 위와 같은 드롭 다운 제안 목록이 표시됩니다. 큰! 그러나 "UK"또는 "London"을 입력하면 아무것도 얻지 못합니다.

도움이된다면보기를 미리 볼 때 생성 된 쿼리는 다음과 같습니다.

SELECT node.nid AS nid,
   location.name AS location_name,
   location.city AS location_city,
   location.country AS location_country,
   node.title AS node_title
 FROM drupal_node node 
 LEFT JOIN drupal_content_type_gig node_data_field_gig_venue ON node.vid = node_data_field_gig_venue.vid
 LEFT JOIN drupal_node node_node_data_field_gig_venue ON node_data_field_gig_venue.field_gig_venue_nid = node_node_data_field_gig_venue.nid
 LEFT JOIN drupal_location_instance location_instance ON node.vid = location_instance.vid
 LEFT JOIN drupal_location location ON location_instance.lid = location.lid
 WHERE node.type in ('venue')

내 질문은 다음과 같습니다.

  1. 자동 완성 기능이 도시 또는 국가에서도 작동하도록하려면 어떻게해야합니까?
  2. 최종 페이지 (예 : 주소 블록)에서 필요한 출력을 얻는 가장 좋은 방법은 무엇입니까? 다른 관련 필드를 추가하고 뷰의 표시에서 제외 할 수 있으며 사용할 수 있다고 가정합니다. 그래도 어떻게 가장 잘 사용해야합니까? 데이터가 미리 서식이 지정된 단일 필드? 각 값에 대한 필드?
  3. 그런 다음 뷰에서 수집 된 데이터를 필드로 어떻게 가져 옵니까?

어떤 도움이라도 대단히 감사하겠습니다! 미리 감사드립니다!

[편집하다]

아래에서 언급했듯이 나는 이것이 일어나는 일임을 발견했습니다.

자동 완성 필드는 입력 된 텍스트를 가져 와서 "장소"콘텐츠 유형의 어떤 노드 제목이이 텍스트와 일치하는지 확인합니다. 그런 다음 내보기를 사용하여 결과를 표시하여 형식을 지정합니다. 다음은 설명 할 그림입니다.

http://img215.imageshack.us/img215/3539/autocomplete.jpg

입력 한 텍스트를 확인할 때 노드 제목을 확인하는 대신 내 뷰를 무시하는 이유는 무엇입니까?

2
eggplant_casserole

1. 질문에 대한 대안이 있습니다. Automatic Nodetitles 모듈을 사용하여 콘텐츠 유형의 CCK 필드에서 [Location name], [City], [Country] 형식으로 장소 제목을 자동으로 만들 수 있습니다. 즉, 위치 이름에 추가 텍스트 필드를 사용해야하며 세 필드를 결합하기 위해 제목이 자동으로 생성됩니다.

이 솔루션은 장소 콘텐츠 유형 제목을 사용하는 모든 곳에서 도시와 국가를 볼 수 있음을 의미하므로 필요한 내용에 맞는지 결정해야합니다.

0
Mad Scientist
  1. 원하는 필드의 내용으로 Venue에서 계산 된 필드를 만들고 해당 필드를 사용할 수 있습니다.

  2. & 3. 노드 참조가 있으면 공연 용 템플릿을 사용하여 원하는 필드를 표시 할 수 있습니다. 또는보기를 사용할 수 있습니다.

0
sharpbites