سؤال

أنا أستخدم Silverstripe لعرض عناصر المنتج، وأحيانًا ينتمي عنصر منتج واحد إلى فئتين/صفحتين مختلفتين.هل من الممكن تخصيص صفحة لوالدين؟إذا لم يكن الأمر كذلك، فهل من الممكن استخدام رابط لعنصر المنتج وربطه بفئتين/صفحتين مختلفتين؟هذا شيء من هذا القبيل:

الفئة/الصفحة:إفطار

الصفحات الفرعية:----------------------خبز

------------------------------------رقائق الذرة

الفئة/الصفحة:غداء

الصفحات الفرعية:-----------------------خبز

-------------------------------------معكرونة

هل من الممكن إنشاء صفحة واحدة تسمى الخبز في قسم الإدارة في Silverstripe ولكنها ستكون أقل من صفحتين (مثل الإفطار والغداء).

إذا لم يكن من الممكن تخصيص صفحة واحدة لوالدين، فهل يمكنني استخدام رابط لخبز الصفحة لصفحتين (الإفطار والغداء)؟كيف أذهب معها؟أي دروس أو وحدات؟

هو موضع تقدير أي مساعدة.

شكرا يا سام :)

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

المحلول

إذا فهمتك بشكل صحيح، فأنت تريد الحصول على صفحات تحتوي على N (1 ..*) آباء.ومع ذلك، تحتوي الصفحات على أصل واحد بالضبط (باستثناء الصفحة الجذرية).ألق نظرة على الكود الأساسي:جميع الصفحات ترث من sapphire/core/model/SiteTree.php.في $extensions يمكنك رؤية الرابط ل sapphire/core/model/Hierarchy.php حيث لديك has_one المحددة للصفحة الرئيسية.على الرغم من أنه يمكنك توسيع SiteTree، إلا أن نظام إدارة المحتوى (CMS) لا يمكنه التعامل مع هذا الأمر، لذا ستحتاج أيضًا إلى إعادة صياغة جزء من نظام إدارة المحتوى (CMS).لا أعتقد أن هذا ما تريد.

أعتقد أن ما تبحث عنه هو DataObjects كصفحات.نلقي نظرة على http://www.ssbits.com/tutorials/2010/dataobjects-as-pages-part-1-keeping-it-simple/ الذي يصف هذا.سوف تحتاج إلى إضافة many_many العلاقات وكل ما تحتاجه على "صفحاتك"، ولكن ستتمتع بكل المرونة التي تريدها.

لا تتردد في نشر أي أسئلة المتابعة.

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