عندما لا يتم تمرير المعلمة إلى وحدة التحكم عبر عنوان url

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

  •  26-12-2019
  •  | 
  •  

سؤال

في cakephp، لدي وحدة تحكم يجب أن تتلقى معلمة ثم تستدعي النموذج للعمل مع قاعدة البيانات لإظهار النتيجة في طريقة عرض.نهج mvc شائع جدًا.

تخيل وحدة التحكم على أنها "أدخل منشورًا جديدًا" والتي يجب أن تكون مرتبطة بمستخدم معين.

لذلك، يجب أن يكون عنوان URL: http://mysite/inspost/(user_id).

المشكلة هي عندما يكون عنوان URL مثل http://mysite/inspost/

سيُظهر نفس العرض وسيُدرج المنشور الجديد حتى لو لم يتم تحديد user_id.

كيف يمكنني التحكم في هذا؟

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

المحلول

من 2اختصار الثاني صفحة المدونة التعليمية، إضافة طبقة:

public function view($id = null) {
    if (!$id) {
        throw new NotFoundException(__('Invalid post'));
    }

    $post = $this->Post->findById($id);
    if (!$post) {
        throw new NotFoundException(__('Invalid post'));
    }
    $this->set('post', $post);
}
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top