PDA

View Full Version : ابهام در mvc



charcharkh
چهارشنبه 18 فروردین 1395, 03:46 صبح
سلام

بنده دارم سایت قدیم خودم رو باز نویسی میکنم با mvc .
در هر صفحه یک المنت container دارم حالا داخل این container یه سری محتویات دارم که در هر صفحه اطلاعاتش فرق با هم دارند مثلا در ایندکس کل محصولا نشون داده میشه با کلیک بر روی هر دسته به صفحه products میره و در این صفحه با کلیک بر روی هر محصول به صفحه جزویات محصول(detailsProducts) میره .

حالا سوال بنده اینه چطور در لایه view امنتهای اچتمل رو بذارم چون در ابتدا یه opennig تگ container میخوام بعد در انتهای کار که دیگر قسمتها رو نوشتم بیام و closing تگ container رو ببندم؟؟!!
چون اومدم و header رو در یک صفحه گذاشتم content رو هم در یک صفحه دیگه و در نهایت footer رو در صفحه دیگه که البته content در صفحات با همدیگه فرق دارند طبق توضیح بالا در حقیقت صفحه رو مثل پازل طراحی کردم . mvc به روش پازلی.:لبخندساده: شاید هم یه pattern جدید اختراع کرده باشم خودم خبر ندارم:چشمک::لبخند::لبخند:
لطفا راهنمایی بفرمایید که آیا اصلا این کار بنده صحیح هست یا نه ؟ یا هیچ محدودیتی در این رابطه وجود نداره ؟! یا اینم یه روش میتونه باشه ؟ حالا...

لطفا دوستان پاسخهای کارشناسی شده و حرفه ای دهند.
ممنونم.

charcharkh
چهارشنبه 18 فروردین 1395, 05:42 صبح
دوستان 21 بار دیده شده اما دریغ از یک پاسخ لطفا راهنمایی بفرمایید.:تشویق:

مهرداد سیف زاده
چهارشنبه 18 فروردین 1395, 05:55 صبح
کاری که شما یعنی اصلا ساختار تپلیت رو در mvc رعایت نکردید و صرفا صفحه رو به سه بخش تقسیم کردید و مورد اصلی که براش دیتا ارسال میکنید content‌وسطی هست
برای کارهای کوچیک که در حد دو یا سه صفحه بدور از پیچیدگی و اختار صفحات هم یکی هست مشکلی نداره
مشکل زمانی بوجود میاد که در صفحات المانهای بیشتری دارید یا حتی امکان داره المانهای header‌و footer هم دستکاری کنید
برای حل این مشکل بد نیست سری به template engine ها بزنید. خودم با smarty کار کردم و پروژه ای هم دارم که هر چند وقت یکبار بروز رسانیش میکنم
http://www.sitecrafting.com/blog/top-5-php-template-engines/

ولی شما که mvc رو یاد گرفتید برای بهتر کار کردن برید سمت فریم ورکها. در بخشهای ci و yii همین بخش یه چرخی بزنید شاید چیزهای خوبی پیدا کنید.

charcharkh
چهارشنبه 18 فروردین 1395, 07:50 صبح
ممنونم . لطف فرمودید