رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
خطا در نمایش view (حل شد)
#1
سلام دوستان

آیا دستور زیر خطا دارد؟
چون بعد کلیک بر روی لینک ساخته شد، صفحه view پیدا نمیشود.

<?= Html::a( '<span class="fa fa-commenting-o label-lg"></span>',['/products/view','id'=>$model->id],['title'=>'توضیحات بیشتر برای این محصول']) ?>

اینم کنترلر:
namespace appcontrollers;

use Yii;
use yiiwebHttpException;
use appcomponentsMyController;
use appmodelsProducts;
use yiihelpersVarDumper;

class ProductsController extends MyController
{

   public function actionView($id) {
       $model=$this->loadModel($id);
       return $this->render('view', ['model'=>$model]);
   }

   private function loadModel($id) {
       if(!$model=Products::findOne($id)){
           throw new HttpException(404,'چنین محصولی وجود ندارد.');
       }
       return $model;
   }

}

ویو هم ساخته شده و وجود داره.

متشکرم.
پاسخ
تشکر شده توسط:
#2
پوشه views توی روت پروژتون داخلش پوشه ای بنام Products ساختین؟ بعد توی اون پوشه فایلی به اسم view هست؟ اینا رو چک کنید اگه مشکلی نداره ارورتون رو اینجا بزارین تا بررسی کنیم
پاسخ
تشکر شده توسط: abdollah110110
#3
دقت کنید که باید اسم پوشه توی مسیر views بصورت products وارد بشه نه Products (تماماً حروف کوچک باشه) و اسم فایل هم view.php یعنی کلاً ویو باید توی مسیر views/products/view.php قرار داشته باشه.
پاسخ
تشکر شده توسط: cloner , abdollah110110
#4
این مواردی که فرمودین رعایت شده.
لینک ساخته میشه ولی عمل نمیکنه.
خطای 404 رو نشون میده با پیام صفحه ای یافت نشد.


فایل‌های پیوست تصاویر بندانگشتی
   
پاسخ
تشکر شده توسط:
#5
عکس از صفحه خطا بگذارین لطفاً.
پاسخ
تشکر شده توسط:
#6
عکس خطا:


فایل‌های پیوست تصاویر بندانگشتی
   
پاسخ
تشکر شده توسط:
#7
البته من فایل ویو و لینک و اکشن رو به index تغییر نام دادم.
پاسخ
تشکر شده توسط:
#8
مشکل از آدرستون هست. این عکسی که دادید آدرسش اینه localhost/shop/web/index.php?r=products%2Findex%id=5 که بین کنترلر و اکشن %2F هست که باید / باشه. مشکل از آدرس دهی دکمه تون هست.
پاسخ
تشکر شده توسط:
#9
نه مشکل اون نیست چون بقیه لینکها هم %2F رو دارند ولی درست کار میکنند و خطایی پیش نمیاد.

<a href="/shop/web/index.php?r=products%2Findex&amp;id=5" title="توضیحات بیشتر برای این محصول"><span class="fa fa-commenting-o label-lg"></span></a>
پاسخ
تشکر شده توسط:
#10
چرا اسم فایل کنترلرتون ProducsControllers هست؟ باید ProductsController باشه.
پاسخ
تشکر شده توسط: abdollah110110
#11
مشکل حل شد.
خیلی ممنون
پاسخ
تشکر شده توسط:




کاربران در حال بازدید این موضوع: 2 مهمان