मैं सेटिंग्स में परिभाषित एक अन्य Drupal डेटाबेस से नोड्स लोड करने के लिए दृश्यों का उपयोग करने की कोशिश कर रहा हूं। 'सेमी' की कुंजी के साथ। दोनों साइटें Drupal 7 हैं। दूसरा डेटाबेस एक अलग Drupal इंस्टॉल है जो एक कंटेंट रिपॉजिटरी या सेंट्रलाइज्ड CMS के रूप में काम कर रहा है। मेरा लक्ष्य गंतव्य साइट पर एक नया दृश्य प्रकार / समूह बनाना है, इसलिए साइट बनाते समय एक दृश्य "सामग्री" के बजाय "सीएमएस सामग्री" चुन सकता है। मुझे उम्मीद है कि साइट बिल्डर तब केंद्रीकृत सीएमएस साइट से सामग्री प्रकार और सामग्री के आधार पर सामान्य रूप से एक दृश्य बनाने में सक्षम होगा, भले ही मुझे प्रत्येक सामग्री प्रकार में सभी क्षेत्रों के बारे में विचार बताना हो।
मेरे hook_views_data () कार्यान्वयन में मैंने 'डेटाबेस' कुंजी सेट की है, लेकिन $ डेटा ['नोड'] को ओवरराइड किए बिना नोड टेबल से पढ़ने का तरीका समझ नहीं सकता।
function cms_connector_views_data() {
$data['cms_connector']['table']['group'] = t('CMS Content');
$data['cms_connector']['table']['base'] = array(
'field' => 'nid',
'title' => t('CMS Content'),
'help' => t('Content from the centralized CMS.'),
'database' => 'cms',
);
return $data;
}
बेशक यह एक नोड तालिका के लिए नहीं दिखता है, यह cms_connector
मेरे cms
डेटाबेस में एक तालिका की तलाश करता है, जो मौजूद नहीं है।
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'cms.cms_connector' doesn't exist
http://views-help.doc.logrus.com/help/views/api-tables कहते हैं कि $ डेटा के भीतर की…
तालिका का वास्तविक डेटाबेस नाम होना चाहिए (उपसर्ग सहित नहीं), लेकिन यह एक उपनाम हो सकता है जब तक कि सम्मिलित जानकारी (बाद में बताई गई) में तालिका का वास्तविक नाम शामिल हो।
मैं वास्तव में जॉइन नहीं करना चाहता, मैं दूसरे डेटाबेस के नोड टेबल से एक बेस टेबल बनाना चाहता हूं। लेकिन मैं देखने के बाद यह वैसे भी (भले ही यह वास्तव में मतलब नहीं है) की कोशिश की http://drupal.org/node/1713010#comment-6310438 :
$data['cms_connector']['table']['join'] = array(
'node' => array(
'left_field' => 'nid',
'left_table' => 'node',
'field' => 'nid',
'table' => 'node',
),
);
मैंने इधर-उधर खोजा है, करो, और स्टैक ओवरफ्लो करो, लेकिन जो मुझे मिल रहा है, उसमें से कुछ ड्रुपल-टू-ड्रुपल है, कुछ अन्य-डेटाबेस-टू-ड्रुपल है।
मुझे यहाँ /drupal/12736/using-nodes-from-another-site-database प्रश्न मिला , लेकिन यह नोड संदर्भों के बारे में है, और अनुत्तरित है।
मैंने केंद्रीकृत साइट से XML / JSON को पढ़ने के लिए सेवाओं का उपयोग करने के बारे में सोचा था, लेकिन उस दृष्टिकोण के लिए बहुत अधिक बाधाएं हैं। मैं वास्तव में नोड्स को सिंक्रनाइज़ करना नहीं चाहता।