2 फ़ील्ड्स की तुलना करके फ़िल्टर को कैसे देखें। यदि फ़ील्ड-ए <फ़ील्ड-बी


18

मेरे पास एक उत्पाद सामग्री प्रकार है जिसमें 2 मूल्य क्षेत्र हैं।

मैं एक ऐसा दृश्य बनाना चाहता हूं जो सभी उत्पादों को दर्शाता है जहां मूल्य-ए मूल्य-बी से कम है।

मैं उम्मीद कर रहा था कि मैं सिर्फ एक फिल्टर जोड़ सकता हूं और मूल्य-ए का चयन कर सकता हूं, फिर से कम का संचालन करें और मूल्य-बी के रूप में मूल्य निर्धारित करें, हालांकि आप ऐसा नहीं कर सकते।

मैंने एक विचार हुक का उपयोग करते हुए देखा है, मुख्य रूप से hook_views_query_alter लेकिन कोई भाग्य नहीं था।

मैंने भी दृश्य PHP मॉड्यूल का उपयोग करने की कोशिश की है और यह काम करने में असमर्थ है।

क्या कोई इसे प्राप्त करने का सबसे अच्छा तरीका जानता है?

जवाबों:


10

आप जो खोज रहे हैं वह फ़िल्टर मानदंड है Global: Fields comparison:)


3
यह स्वीकृत उत्तर होना चाहिए।
joe_flash 16

4

Drupal उत्तर स्टैक एक्सचेंज में आपका स्वागत है! अब तक के ड्रुपल विचारों में इसे प्राप्त करने के लिए कोई सीधा आगे रास्ता नहीं है, और जैसा कि मैं जानता हूं।

आप दृश्य PHP मॉड्यूल का उपयोग करके ऐसा कर सकते हैं । इस मॉड्यूल को सक्षम करें और एक फ़िल्टर PHP फ़िल्टर जोड़ें, जिसे आप मॉड्यूल से ऊपर स्थापित करने के बाद, फ़िल्टर ग्लोबल श्रेणी से चुन सकते हैं।

Php कोड को फ़िल्टर के PHP कोड सेक्शन में नीचे की तरह कुछ जोड़ें।

$node = node_load($data->nid);

$field_a = field_get_items('node', $node, 'field_price_a');
$price_a = field_view_value('node', $node, 'field_price_a', $field_a[0]);

$field_b = field_get_items('node', $node, 'field_price_b');
$price_b = field_view_value('node', $node, 'field_price_b', $field_b[0]);

if ($price_a >= $price_b) {
  return TRUE;
}

अपने मूल्य के साथ field_price_a को परिवर्तित करें अपने मूल्य B क्षेत्र के नाम के साथ एक फ़ील्ड नाम और field_price_b।

मैंने परीक्षण किया और यह मेरे लिए काम कर गया! आशा है कि आप इसे भी क्रैक कर सकते हैं :-)


सलाह के लिये धन्यवाद। मैं अभी भी इसे कोड के इस बिट के साथ काम करने में असमर्थ हूं और उन क्षेत्रों का उपयोग कर चुका हूं जो dsm ($ डेटा) करते समय दिखाई देते हैं; मुझे लगता है कि मैं सिर्फ एक चेकबॉक्स में जोड़ सकता हूं और अगर चेकबॉक्स चेक किया गया है तो फ़िल्टर करें। आपकी सहायता के लिए धन्यवाद।
6

इस बीच, किसी भी कस्टम मॉड्यूल की आवश्यकता के बिना किसी कोडिंग ओडर के बिना विचारों के साथ यह संभव है।
Елин Й


-1

http://drupal.org/project/views_dependent_filters बहुत उपयोगी है ...

"फ़िल्टर मानदंड" के ऐड-बटन में नए सबमेन्यू हैं। सेल्फएक्सप्लानिंग एक बार जब आप इसे आजमाते हैं ...

संपादित करें: क्षमा करें, लेकिन> या <के लिए नहीं, बल्कि फ़िल्टरग्रुप के लिए जिसे OR द्वारा अलग किया जा सकता है


-2

यदि मूल्य आपके सामग्री प्रकार में एक फ़ील्ड है, तो ड्रुपल 7 दृश्यों में आप स्वचालित रूप से कर सकते हैं, और आसानी से एक फ़ील्ड कॉम-पेरेर चुन सकते हैं। मुझे लगता है कि यह काम करना चाहिए।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.