سؤال

وحاول اليوم في شخص عمل لإقناعي ما يلي:

{$obj->getTableInfo()}

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

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

المحلول

وأنت على حق. انه من الخطأ.

يجب

والمكالمات قاعدة البيانات، بغض النظر عن شكل ما، يعيش في وحدة تحكم إذا كنت تريد أن تفعل MVC الحق.

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

نصائح أخرى

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

ويعتمد على السياق ونطاقه حقا.

هل $ الكائنات وحدة تحكم أو طبقة النموذج؟ يجب أن الإجابة أم لا يصح في رأيي.

وردا على قراءة إجابات أخرى.

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

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