البرامج النصية Zend لم يتم إعدادها بشكل صحيح على ما أعتقد

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

  •  22-09-2019
  •  | 
  •  

سؤال

عندما أنشأت وحدة تحكم جديدة ، أي في هذه الحالة Authenticate, ، أنشأت أيضًا المجلد والملف application/views/scripts/authentication/index.phtml

ليست مشكلة عند ضرب عنوان URL http://dev.local/authentication/ ولكن عند استدعاء أي إجراء أي http://dev.local/authentication/login, ، أحصل على الخطأ أدناه.

Message: script 'authentication/login.phtml' not found in path (C:\Sites\application\views\scripts\)

بغض النظر عن أي تغييرات سأجريها على إجراء تسجيل الدخول ، لا ينبغي أن أطلب تلقائيًا صفحة جديدة؟ أو انا مخطئ؟

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

المحلول

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

$this->_helper->layout()->disableLayout();
$this->_helper->viewRenderer->setNoRender(true);

تحرير ردا على التعليق:

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

الإجراءات الوحيدة التي أستخدمها الرمز أعلاه هي الإجراءات التي تسمى عادةً باستخدام AJAX وتؤدي ذلك إلى إخراج بعض رمز JSON ، على سبيل المثال.

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