PDA

View Full Version : سوال: ساخت منوي پويا



mahziar
پنج شنبه 26 فروردین 1389, 12:53 عصر
چطوري مي تونم منويي طراحي كنم كه عنوان دسته را از يك جدول بانك اطلاعاتي و زير مجموعه هاي آنرا از جدول ديگري بخونه؟

Future
جمعه 27 فروردین 1389, 19:13 عصر
میشه یکم بیشتر توضیح بدید

aminghaderi
جمعه 27 فروردین 1389, 20:20 عصر
بستگی به میزان تو رفتگی منوی شما داره ؟!
ولی اینتوری که شما می گید من احساس می کنم یه منو می خواین که تا یک سطر زیر مجموعه داشته باشه؟!
من با تری ویو این کار رو انجام دادم ، اصلا کاری نداره به این صورته مه شما عناوین منو رو در یه Table پایگاه مثلا به نام TFM (تیبل فرست منو) که عناوین منوی سطر 0 رو داخلش قرار می دیم ، که متشکل از دو فیلد Name ، ID هست و یه تیبل دیگه به نام مثلا TTM (تیبل تو منو) قرار می دهید که داخل متشکل از 3 فیلد به نام FM ، Name ، ID هست که FM مقدار آیدی رکورد سطر 0 یا همون عناوین منوی اصلی رو داخلش ذخیره می کنه ، که در ضمن کلید اصلی هم هستند .
فکر کنم خلاصه و مفید ، مختصر گفتم.
و یه مورد دیگه شما به استفاده از این روش می تونی تا N سطر هم منو داشته باشی ولی منطقی نیست و در بالا تر از 5 سطر پردازش بالایی دارید که قابل چشم پوشی نیست.
اما اگه بتونید با XML این کار رو انجام بدید مشکل حل میشه ولی یه ادیتور باید طراحی کنید یا کدشو پیدا کنید ، که البته به نظر من روش XML برای استفاده در منو هایی که میزان فرورفتگی بیشتر از 5 تا دارند ، خیلی خیلی عالی و منطقی و هزینه پردازشی کمی هم داره.
البته من خودم بیشتر از 5 سطر فرورفتگی منو ندیدم.
در ضمن mahziar (http://barnamenevis.org/forum/member.php?u=58082) جان به نظر من این سوال شما مربوط به بخش پایگاه داده بود ، نه اینجا؟!
اخه نیاز به طراحیه پایگاه داره؟!
موفق باشید.

exlord
شنبه 28 فروردین 1389, 11:59 صبح
برای نگه داشتن ساختار درختی بهترین روش استفاده از یه جدول با self join هستش ...
به این صورت که یه جدول داری با 3 تا فیلد ID , Name , ParentID
parentID یه FK هستش برای ID .......


شما عناوین منو رو در یه Table پایگاه مثلا به نام TFM (تیبل فرست منو) که عناوین منوی سطر 0 رو داخلش قرار می دیم ، که متشکل از دو فیلد Name ، ID هست و یه تیبل دیگه به نام مثلا TTM (تیبل تو منو) قرار می دهید که داخل متشکل از 3 فیلد به نام FM ، Name ، ID هست که FM مقدار آیدی رکورد سطر 0 یا همون عناوین منوی اصلی رو داخلش ذخیره می کنه ، که در ضمن کلید اصلی هم هستند .
فکر کنم خلاصه و مفید ، مختصر گفتم.
و یه مورد دیگه شما به استفاده از این روش می تونی تا N سطر هم منو داشته باشی ولی منطقی نیست

اولا .... اگه منظورت از N سطر همون N تا زیر شاخص ؟؟؟ به نظر من با این روش غیر ممکنه .....
FM چطوری کلید اصلی میشه ؟؟؟؟ مگه هر عضو منوی اصلی نمیتونه چنتا زیر شاخه داشته باشه ؟؟؟

raziee
شنبه 28 فروردین 1389, 13:44 عصر
این لینک رو ببینید.
دوستمون با جی کوئری منویی رو ساخت:
http://www.barnamenevis.org/forum/showthread.php?t=215065

aminghaderi
شنبه 28 فروردین 1389, 17:39 عصر
اولا .... اگه منظورت از N سطر همون N تا زیر شاخص ؟؟؟ به نظر من با این روش غیر ممکنه .....
FM چطوری کلید اصلی میشه ؟؟؟؟ مگه هر عضو منوی اصلی نمیتونه چنتا زیر شاخه داشته باشه ؟؟؟
چرا فرهاد جان شدنیه ، منتها گفتم منطقی نیست؟! و پروسه سنگینی هم به خودش اختصاص می ده؟!
من دقیقا الگریتم و پایگاهش رو قبلا واسه یه برنامه winAPP طراحی کرده بودم ، می گم منطقی نیست(بحث مهندسی پایگاه منتفی میشه ، افزونگی داده در حد بالا پیش می یاد ، پروسه وحشت ناک)
به طوریکی ما باید در فرورفتگی 15 هم یه چیزی حدود 17 فیلد داشته باشیم ، که در هنگام خروجی با 17 جدول Join کنیم.
FM تو یه جدول کلید اصلی و جدول های دیگه کلید خارجی دیگه؟! چون تابلو بود نگفتم ، فرهاد جان.