رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
انتقال پارامتر نوع مدل از داخل ویو (حل شد)
#1
سلام چرا در ویو نمیتوان پارامتر مدل را انتقال داد
<?=Html::a('test',['/query-detail/edit-post','model'=>$model,'key'=>$key,'index'=>$index]);?>

نمیدونم چرا فقط پارامتر مدل منتقل نمیشه در صورتیکه سایر پارامترها منتقل میشه از
Yii::$app->getUrlManager()->createUrl(['/query-detail/edit-post','model'=>$model,'key'=>$key,'index'=>$index ])

هم استفاده کردم باز هم خطا میده که فاقد پرامتر مدل است
در همه ویو ها تست کردم این مشکل هست در حالیکه در کنترلر اگر با
$this->redirect(['/query-detail/edit-post','model'=>$model,'key'=>$key,'index'=>$index ]);

استفاده کنیم مدل منتقل میشود؟

نمیدونم در ویو چطور از redirect استفاده کنم تا بتونم پارامتر مدل رو بدون مشکل انتقال بدم؟ مجبورم تک تک فیلدها را دونه دونه منتقل کنم ؟
پاسخ
تشکر شده توسط:
#2
موقع ریدایرکت تنها attribute هایی که مقدار داشته باشن بوسیله متد get ارسال میشن ، بنظرم مدل رو توی یک سیشن بریزید و توی ویو سیشن رو توی یک متغییر بریزید و ازش استفاده کنید
پاسخ
تشکر شده توسط: shpegah
#3
کاری که میخواین انجام بدین دقیقاً چیه؟ شما میخواین ریدایرکت کنید؟ مدل رو نیاز ندارین و منطقی نیست که بفرستین چون این مقادیر به URL اضافه میشن و نمیشه آبجکت رو توی QueryString گذاشت چون یه رشته متنی ساده است. بجاش id مدل رو بفرستین و اونطرف مدل رو با کمک id پیدا کنید.
پاسخ
تشکر شده توسط: shpegah
#4
میتونید تنها کلید مدل رو له وسیله ویو بفرستید به اکشن و توی کنترلر یک متد بنویسید که بر اساس کلید رکورد مورد نظر رو برگردونه
پاسخ
تشکر شده توسط: shpegah
#5
ممنون چون یه بار واکشی شده نمیخواستم دوباره واکشی کنم پس با توجه به نظرات شما بهترین راه همون استفاده از سشنه وذخیره مدل در اون
پاسخ
تشکر شده توسط:
#6
حجم سشن بالا میره. بعلاوه باید سریالایز و دیسریالایز کنید که زیاد جالب نیست. با سشن، همه کاربران قراره این اطلاعات رو روی سرور بریزن و سنگین میشه. از واکشی نتایج به دفعات نگران نباشین. توی صفحه اصلی همین انجمن بالای 50 کوئری زده میشه. وقتی سرور PHP و MySQL یکیه، این چیزا سربار زیادی ایجاد نمیکنه. اگه خیلی روی این موضوع حساس هستین میتونین نتایج کوئری رو Cache کنید.
پاسخ
تشکر شده توسط: shpegah




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