ما هي أفضل طريقة لإنشاء قاعدة بيانات ديناميكية القوائم مدفوعة في للكيك؟

StackOverflow https://stackoverflow.com/questions/613996

  •  03-07-2019
  •  | 
  •  

سؤال

وأريد لعرض قائمة في كل صفحة التي يتم تشغيلها من قاعدة بيانات. باستخدام لتو الى اسفل وفب القذر الذي يكون سهلا ولكن أريد أن دمجه مع للكيك باستخدام نظام MVC بهم. الآن سؤالي هو: كيف هو أفضل وسيلة للذهاب حول هذا الموضوع؟

وأفكاري هي لجعل عنصر مع تخطيط ثم عنصر أو وحدة تحكم عن كل منطق. أي اقتراحات بشأن هذا؟ أو هو مساعد ما أريد للاستخدام؟

وأنا أيضا بحاجة للحصول على كل البيانات من جداول متعددة في قاعدة البيانات. وأنه من الأفضل أن تفعل كل ما عندي من جمع البيانات المنطق من خلال نموذج واحد؟ أو تفعل أكثر من ذلك في وحدة تحكم القائمة (أو عنصر) واستخدام نماذج لكل جدول؟

وشكرا لك،

والتر

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

المحلول

يجب نماذج جلب ومعالجة البيانات من الجدول أنهم modelising، لذلك جلب البيانات القائمة لكل نموذج في هذا النموذج.

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

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

نصائح أخرى

وأنا أتفق مع الإجابة neilcrooks، ولكن أود أن أضيف بعض الأشياء من أجل الوضوح.

والمساعدون والعناصر هي بسيطة جدا، إلا أن المساعدين يمكن أن يكون أكثر من ذلك بقليل قوية (على الأقل، هذا ما أعتقد من 'م.)). لذا، إذا كنت تستخدم المساعد، يمكنك ربط والجمعيات نموذج توثيق على الطاير - والتي سوف تسمح لك لانتزاع البيانات من النماذج الخاصة بك (مؤقتا) المرتبطة

وشخصيا، أحب نماذج الدهون والتحكم نحيف، لذلك أعتقد لو كنت في هذه الحالة، وأود أن استخدام مساعد ومؤقتا ربط نماذج لذلك. سيتم الوصول إلى أي بيانات أنني بحاجة لجلب من النماذج القائمة من خلال Model1-> fetchMenuPart (...) اكتب المكالمات.

وبعد ذلك يمكنك الاتصال المساعد الخاص بك من ملف التخطيط الخاص بك (ق).

وأنا لا أعرف لماذا لم يتم توثيقها هذا في أي مكان، ولكن أنا فقط وجدت هذه الليلة الماضية. المتغيرات للتخطيط أو العناصر يجب أن تكون محددة مع _for_layout تنتهي. على سبيل المثال: $ هذا-> مجموعة ( 'categories_for_layout، $ هذا-> Category-> العثور على (' كل '))؛

ولقد استخدمت طريقة beforeFilter في فئة AppController، لأنني في حاجة تلك القائمة في كل صفحة.

وهنا هو حل كبير اكتشفت أثناء البحث عن هذا الشيء على شبكة الإنترنت.

http://articles.classoutfit.com/cakephp-dynamic-navigation- بارات /

وأعتقد أنك سوف تستخدم إنشاء عنصر من شأنه أن يعقد أتش تي أم أل للقائمة ثم جعل القائمة في التصميم الخاص بك.

echo $this->element('your menu');

لجعلها دينامية تعيين الصلات القائمة، ربما كما صفيف في وحدة تحكم.

ولقد وجدت مادة جيدة واحدة هنا HTTP: //www.milestree. كوم / WEBDEV / للكيك / dynamic_menu

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