سؤال

مرحبا :) لقد نشرت هذه السؤال نفسها على موقع موجه نحو دروبال، ولكن لم أحصل على أي ردود على الإطلاق. أنا أزعجت نفسي وتمنى أن يكون الموقع أكثر مثل Stackoverflow، لذلك اعتقدت، لماذا لا تحاول أن أسألها هنا :)

ألعب مع عرض يعرض العقد ينتمي إلى مصطلح تصنيف. يحتوي المفردات أيضا على تصنيف نويسيكيو تصنيفا مع استقبال لجميع المصطلحات.

حتى الآن العرض لديه حجة واحدة ومعرف مصطلح التصنيف، ويتم فرزه بواسطة تاريخ النشر. ولكن ماذا لو كنت أرغب في عرض جميع العقد من مصطلح معين، مع كل العقد NoDequeue على القمة، وجميع العقد غير المعدنية (ولكن لا يزال بموجب هذا المصطلح التصنيفي الخاص هذا) أدناه، مرتبة حسب التاريخ؟

للتوضيح، قل هذا هو مفرداتي، وسوف نسميها "أشياء المعيشة"

Plant
--Fruit
--Vegetable
Animal
--Fish
--Dinosaurs

تم العثور على العقد التالية تحت الديناصورات:

Tyrannosaurus Rex (added 2009-01-01)
Megalosaurus (added 2009-01-02)
Velociraptor (added 2009-01-03)
Brachiosaurus (added 2009-01-04)

منذ Tyrannosauruses و Velociroptors هي ديناصورات رائعة للغاية، يتم إضافتها أيضا إلى الأشياء المعيشية NoDequeue، الديناصورات Subqueue:

الاستبدل:

  1. Velociraptor.
  2. Tyrannosaurus Rex.

يجب عرض الرأي النهائي لهم بهذا الترتيب:

Velociraptor (it's first in the NQ)
Tyrannosaurus Rex (2nd in NQ)
Brachiosaurus (of the remaining dinosaurs, this is the newest)
Megalosaurus (oldest non-queue dinosaur)

لقد أنشأت علاقة إلى NoDequeue، لكنها لن تسمح لي باختيار تفضيل، ويمكنني الحد من "الأشياء المعيشية" فقط. وسيطة وجهة نظري الأولى هي مصطلح معرف، لذلك اعتقدت أنه إذا أضفت "NoDequeue: مرجع تفضيلي" كوسيطة الثانية، سأحصل على السلوك المتوقع، لكن هذا يظهر فقط الديناصورات المدرجة في NoDequeue.

سيكون موضع تقدير كبير أي مساعدة أو اقتراحات حول هذه المشكلة. شكرا!

هل كانت مفيدة؟

المحلول

لم أحاول حقا الكثير من الأساطير NoDequeues، لذلك أنا لست متأكدا تماما من هذا. ولكن من تجربتي مع NoDequeues، يبدو أنه عند استخدام المشاهدات، فأنت تقتصر على الأشياء الأساسية التي يدعمونها ولا يمكنك القيام بها حقا نوع التخصيص الذي تبحث عنه. أعتقد أن أفضل رهان، سيكون لإنشاء معالج فرز الآراء الخاصة بك، حيث يمكنك فرزه مثل هذا. من المحتمل أن تكون صعبة للغاية لجعل مثل هذا المعالج، حيث يجب عليك معرفة كل من وجهات النظر و noDequeues من أجل جعلها تعمل. يجب أن تعطيه حقا بعض الفكر إذا كان الأمر يستحق كل هذا العناء قبل مغامرة هذا المسار، إلا إذا كنت قد فعلت هذا النوع من الأشياء مع وجهات النظر من قبل.

نصائح أخرى

المزيد من الخارقة:
العمل حول السلوك الذي تحاول تحقيقه قد يكون هو التخلي عن استخدام noDequeues على الإطلاق. لست متأكدا من الزخم بأكمله لاستخدام NoDequeues ولا أهمية التواريخ، ولكن يواجه مشكلات مماثلة من قبل، لقد تمكنت من معالجة ذلك باستخدام ما يلي:

  1. لزج
  2. التواريخ المعدلة

إذا كنت لاصقة في الديناصورات الفائقة، وتعديل التواريخ المنشورة للعناصر بحيث تتطابق مع طلبك، فيمكنك إنتاج ما تبحث عنه في طريقة عرض واحدة. إنها Sorta Hokey، وهي متخصصة لعدم العناية حقا في نشر تواريخ النشر (شيء يعتمد دائما على الموقف) أو وجود سبب أكثر إلحاحا لاستخدام NoDequeue. ومع ذلك، إذا كنت لا تحتاج إلى NoDequeue أو التواريخ، فهذا حل عملي.

يجب أن يكون الحل 2 المشاهير من جيريمي قابلا للتطبيق، وأني أقول إن طريقة أخرى شائعة للتعامل مع السيناريو المحدد.

حلقة مثيرة تحذير!

احصل على عرض أساسي في صفحتك باستخدام عناصر NoDQueue.

قم بإنشاء طريقة عرض أخرى تتعرض ككتلة لعناصر غير NOODQUE. ضع هذه الكتلة في منطقة المحتوى الرئيسي وقصرها على إظهار عناوين URL فقط والتي هي نفس الرأي الأول.

قد تضطر إلى القيام ببعض الأشكال مع متغيرات URL لكنني أعتقد أنها ستعمل.

لماذا لا تتسلسل وجهات النظر وراء كل noDequeue؟ (يولد كل noDequeue عرضا) يمكنك إضافة رأس (انظر "الإعدادات الأساسية" في عرض صفحة تحرير) إلى NoDequeue الثاني الذي يحتوي على رمز PHP الذي يستدعي المشاهدات Views_Embed_View ("أولا NoDequeue") (تحتاج فقط إلى تغيير تنسيق إدخال الرأس إلى "PHP"). أو بالأحرى، قم بإنشاء طريقة عرض مخصصة تتضمن كل NoDequeue عن طريق استدعاء المشاهدات Discoking_Embed_View (). هذا من شأنه أن يضع بشكل فعال NoDequeue واحد على رأس شخص آخر، وإذا كان من نفس النوع / نوع المحتوى الذي لا تحتاج حتى إلى فوضى حول الحقول: يمكنك استخدام نمط الصف == العقدة. فيما يتعلق بحججك، يمكن تمريرها إلى وجهات النظر_EMBED_VIEW، حيث أن المعلمة الثالثة (لا تقول المستندات أن AFAICR، لكنني وجدت وظيفة في المنتديات (http://drupal.org/node/99721.) يمكن أن يتم إرسال Args المشار إليها بأنها "$ current_view-> args" إلى العرض الذي يتم تضمينه).

هذر

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top