P2.pdf

‫ﺑﺮﻧﺎﻣﻪﺳﺎزی وب‬
‫ﻧﯿﻢﺳﺎل اول ‪٩٣-٩٢‬‬
‫ﻣﺪرس‪ :‬ﺣﻤﯿﺪ ﺿﺮاﺑ زاده‬
‫داﻧﺸ ﺪهی ﻣﻬﻨﺪﺳ ﮐﺎﻣﭙﯿﻮﺗﺮ‬
‫ﻓﺎز دوم ﭘﺮوژه‬
‫ﻣﻬﻠﺖ ارﺳﺎل‪ ٣ :‬دیﻣﺎه‬
‫ﻓﺮوﺷ ﺎه اﯾﻨﺘﺮﻧﺘ ﻣﺤﺼﻮﻻت‬
‫در ﻣﺮﺣﻠﻪی اول ﭘﺮوژه‪ ،‬ﻇﺎﻫﺮ اﺻﻠ ﺳﺎﯾﺖ ﻓﺮوﺷ ﺎه اﯾﻨﺘﺮﻧﺘ را ﭘﯿﺎدهﺳﺎزی ﮐﺮدﯾﻢ‪ .‬در اﯾﻦ ﻣﺮﺣﻠﻪ‪ ،‬ﭘﯿﺎدهﺳﺎزی ﺳﻤﺖ‬
‫ﺳﺮور ﺳﺎﯾﺖ را ﺷﺮوع ﻣ ﮐﻨﯿﻢ‪ .‬ﻫﺪف اﺻﻠ اﯾﻦ ﻣﺮﺣﻠﻪ اﺟﺮا ﺷﺪن ﺣﺪاﻗﻞ ﮐﺎرﮐﺮد ‪١‬ﻫﺎی ﺳﺎﯾﺖ ﻃﺮاﺣ ﺷﺪه در‬
‫ﻣﺮﺣﻠﻪی ﻗﺒﻞ اﺳﺖ‪ .‬ﯾﻌﻨ اوﻟﻮﯾﺖ ﺷﻤﺎ در اﯾﻦ ﻣﺮﺣﻠﻪ‪ ،‬ﭘﯿﺎدهﺳﺎزی ﯾ ﺳﺮور ﮐﺎرا و ﺳﭙﺲ ﻃﺮاﺣ ﺑﺨﺶ ﮐﺎرﺑﺮ و در‬
‫ﻧﻬﺎﯾﺖ زﯾﺒﺎﯾ اﺳﺖ‪.‬‬
‫ﺗﻮﺿﯿﺤﺎت ﮐﻠ‬
‫اﮔﺮ در ﭘﯿﺎدهﺳﺎزی ﻓﺎز ﻗﺒﻠ ﭘﺮوژه ﮐﻤ ﯾﺎ ﮐﺎﺳﺘ ای وﺟﻮد داﺷﺘﻪ اﺳﺖ‪ ،‬ﯾﺎ ﻧﻤﺮات اﻣﺘﯿﺎزی ذﮐﺮﺷﺪه ﯾﻌﻨ ﺑﺮش ﺗﺼﻮﯾﺮ‬
‫و دﮐﻤﻪی ‪ back/forward‬را اﻧﺠﺎم ﻧﺪادﯾﺪ‪ ،‬ﯾﺎ ﻣﻘﺪاری از ﻧﻤﺮهی ﮔﺮاﻓﯿ و زﯾﺒﺎﯾ ﻇﺎﻫﺮی را از دﺳﺖ دادﯾﺪ‪ ،‬ﻫﻨﻮز‬
‫ﻓﺮﺻﺖ دارﯾﺪ‪ .‬ﺑﺎ ﮐﺎﻣﻞ ﮐﺮدن ﭘﺮوژهی ﻓﺎز اول ﺧﻮد‪ ،‬ﻣ ﺗﻮاﻧﯿﺪ ﺗﺎ ‪ ۶٠٪‬از ﻧﻤﺮهی آن ﺑﺨﺶﻫﺎ را ﮐﺴﺐ ﮐﻨﯿﺪ‪ .‬اﯾﻦ‬
‫ﺗﺼﻤﯿﻢ ﻓﻘﻂ ﺑﻪ ﻣﻨﻈﻮر رﻓﺎه ﺣﺎل داﻧﺶﺟﻮﯾﺎن و زﯾﺒﺎﯾ ﭘﺮوژهﻫﺎی ﺧﺮوﺟ درس اﺳﺖ‪.‬‬
‫ﺷﺎﯾﺎن ذﮐﺮ اﺳﺖ ﮐﻪ ﭘﺮوژهﻫﺎﯾ ﮐﻪ از ‪ git‬اﺳﺘﻔﺎده ﻧ ﻨﻨﺪ‪ ،‬ﻧﻤﺮهای از ﮐﻞ اﯾﻦ ﻓﺎز ﮐﺴﺐ ﻧﺨﻮاﻫﻨﺪ ﮐﺮد‪.‬‬
‫• ﻣﻮارد ﮐﻠ ﺳﺎﯾﺖ‬
‫– ﺑﺎ اﻧﺘﺨﺎب ﻫﺮ ﻣﺤﺼﻮل در ‪ slideshow‬ﯾﺎ ﻟﯿﺴﺖ ﻣﺤﺼﻮﻻت ﯾﺎ ﻏﯿﺮه ﺑﻪ ﺻﻔﺤﻪی ﻣﺸﺨﺼﺎت آن ﻣﺤﺼﻮل‬
‫ﻫﺪاﯾﺖ ﻣ ﺷﻮﯾﻢ‪.‬‬
‫ﺑﺎﺷﺪ و در ﺳﺮور ﺗﻌﯿﯿﻦ ﺷﻮﻧﺪ‪ .‬وﻟ در اﯾﻦ ﻓﺎز ﻧﺒﺎﯾﺪ ﺑﻪ ﺻﻮرت ‪ajax‬‬
‫– ﻟﯿﺴﺖ دﺳﺘﻪﻫﺎ ﺑﺎﯾﺪ داﯾﻨﺎﻣﯿ‬
‫ﭘﯿﺎدهﺳﺎزی ﺷﻮد ﺑﻠ ﻪ از ﻃﺮﯾﻖ ﺳﺮور در ﻫﻨ ﺎم ﻟﻮد ﺻﻔﺤﻪ ﺳﺎﺧﺘﻪ ﺷﻮﻧﺪ‪.‬‬
‫– ﺣﺮﮐﺖ ‪ ٢‬ﺑﯿﻦ ﺻﻔﺤﻪﻫﺎ ﺑﺎﯾﺪ ﺑﻪﺻﻮرت ﮐﺎﻣﻞ ﭘﯿﺎدهﺳﺎزی ﺷﺪهﺑﺎﺷﺪ‪ .‬ﯾﻌﻨ ﺑﺎ ﮐﻠﯿ‬
‫ﯾ ﻣﺤﺼﻮل ﺧﺎص ﯾﺎ ﺟﺴﺖوﺟﻮ ﺑﻪ ﺻﻔﺤﻪی ﻣﻮردﻧﻈﺮ ﺑﺮود‪.‬‬
‫– ﮐﻠﯿﻪی ﮐﺎرﻫﺎی ﻣﺮﺑﻮط ﺑﻪ ﺳﺒﺪ ﺧﺮﯾﺪ ﻣﺮﺑﻮط ﺑﻪ اﯾﻦ ﻓﺎز ﻧﻤ ﺑﺎﺷﺪ‪ .‬اﻟﺒﺘﻪ ﻫﻨﻮز اﺿﺎﻓﻪ ﺷﺪن ﺑﻪ ﺳﺒﺪ ﺧﺮﯾﺪ و‬
‫ﻧﺸﺎن دادن ﺳﺒﺪ ﺧﺮﯾﺪ و ﻣﺠﻤﻮع ﻗﯿﻤﺖ آن در ﯾ ﺻﻔﺤﻪ‪ ،‬ﺑﺎﯾﺪ از ﻓﺎز ﻗﺒﻞ ﮐﺎر ﮐﻨﺪ‪ .‬اﮔﺮ ﺑﻪ ﮐﻤ ‪local‬‬
‫‪ storage‬ﺗﻮاﻧﺴﺘﯿﺪ ﺳﺒﺪ ﺧﺮﯾﺪ را در ﺳﻤﺖ ﮐﺎرﺑﺮ ذﺧﯿﺮه ﮐﻨﯿﺪ ﺗﺎ از ﺑﯿﻦ ﻧﺮود‪ ،‬ﻧﻤﺮهی اﻣﺘﯿﺎزی دارﯾﺪ‪.‬‬
‫ﺑﺮ روی ﯾ‬
‫دﺳﺘﻪ‪،‬‬
‫• ﺻﻔﺤﻪی ﺧﺎﻧﻪ‬
‫– ﻣﺤﺼﻮﻻت درون ‪ slideshow‬ﺑﺎﯾﺪ از ﺳﺮور ﻟﻮد ﺷﻮﻧﺪ‪ ،‬و اﻣ ﺎن ﺗﻌﯿﯿﻦ آنﻫﺎ ﺗﻮﺳﻂ ادﻣﯿﻦ وﺟﻮد داﺷﺘﻪ‬
‫ﺑﺎﺷﺪ‪.‬‬
‫– ﺑﺎﻗ ﻗﺴﻤﺖﻫﺎی اﯾﻦ ﺻﻔﺤﻪ ﻫﻤﭽﻮن ﻣﺤﺼﻮﻻت ﺑﺮﺗﺮ ﯾﺎ ﭘﺮﻃﺮﻓﺪار ﯾﺎ ﻏﯿﺮه‪ ،‬ﻧﺒﺎﯾﺪ ﻫﯿﭻﯾ اﺳﺘﺎﺗﯿ‬
‫ﺑﺎﺷﻨﺪ و ﻫﻤ ﺑﺎﯾﺪ از ﺳﺮور ﺑﻪ روش دلﺧﻮاه ﺷﻤﺎ ﮔﺮﻓﺘﻪ ﺷﻮﻧﺪ‪.‬‬
‫‪Functionality١‬‬
‫‪Navigation٢‬‬
‫‪١‬‬
‫• ﺻﻔﺤﻪی ﻟﯿﺴﺖ ﻣﺤﺼﻮﻻت‬
‫– در اﯾﻦ ﺻﻔﺤﻪ ﻟﯿﺴﺖ ﻣﺤﺼﻮﻻت ﺑﻪ ﺻﻮرت ﻗﺒﻞ )ﯾﻌﻨ ﺑﺎ ﺻﻔﺤﻪﺑﻨﺪی( و ﺗﻮﺳﻂ ‪ ajax‬از ﺳﺮور ﺷﻤﺎ‬
‫ﺑﺎرﮔﺬاری ﻣ ﺷﻮﻧﺪ‪.‬‬
‫• ﺻﻔﺤﻪی ﻣﺸﺨﺼﺎت ﻣﺤﺼﻮل‬
‫– در اﯾﻦ ﺻﻔﺤﻪ ﻧﯿﺰ ﻗﺴﻤﺖﻫﺎﯾ ﻧﻈﯿﺮ ﻣﺤﺼﻮﻻت ﻣﺮﺗﺒﻂ ﻧﺒﺎﯾﺪ اﺳﺘﺎﺗﯿ‬
‫روش دلﺧﻮاه ﺷﻤﺎ ﺑﺎ ﺗﻮﺟﻪ ﺑﻪ ﺷﻨﺎﺳﻪی ﻣﺤﺼﻮل ﮔﺮﻓﺘﻪ ﺷﻮﻧﺪ‪.‬‬
‫ﺑﺎﺷﻨﺪ و ﻫﻤ‬
‫ﺑﺎﯾﺪ از ﺳﺮور ﺑﻪ‬
‫• ﺻﻔﺤﻪی ﻓﺮوﺷﻨﺪه‬
‫– از ﺑﯿﻦ ﺗﻤﺎﻣ ﺻﻔﺤﺎت ﻓﺮوﺷﻨﺪه ﻓﻘﻂ ﻫﻤﺎﻧ ﮐﻪ در ﻓﺎز ﻗﺒﻞ ﭘﯿﺎدهﺳﺎزی ﮐﺮدﯾﺪ‪ ،‬ﯾﻌﻨ اﺿﺎﻓﻪ ﮐﺮدن‬
‫ﻣﺤﺼﻮﻻت را ﺑﻪ ﻫﻤﺎن ﺳﺒ و ﺳﯿﺎق ﺑﺎﯾﺪ در ﺳﻤﺖ ﺳﺮور ﭘﺸﺘﯿﺒﺎﻧ ﮐﻨﯿﺪ‪.‬‬
‫• ﺳﺎﻣﺎﻧﻪی ﺟﺴﺖوﺟﻮ‬
‫در اﯾﻦ ﻓﺎز از ﺗﻤﺮﯾﻦ ﺷﻤﺎ ﻫﻤﭽﻨﯿﻦ وﻇﯿﻔﻪ دارﯾﺪ ﺗﺎ ﯾ زﯾﺮﺳﺎﻣﺎﻧﻪ ﺑﺮای ﺟﺴﺖوﺟﻮ ﺑﻪ ﭘﺮوژهی ﺧﻮد اﺿﺎﻓﻪ‬
‫ﮐﻨﯿﺪ‪ .‬اﯾﻦ ﺳﺎﻣﺎﻧﻪ ﺑﺎﯾﺪ ﻋﻤﻠ ﺮد ﺳﺎﻣﺎﻧﻪی ﺟﺴﺖوﺟﻮﯾ ﮐﻪ در ﻓﺎز ﻗﺒﻠ در اﺧﺘﯿﺎر ﺷﻤﺎ ﻗﺮار داده ﺷﺪه ﺑﻮد را‬
‫ﭘﯿﺎدهﺳﺎزی ﻧﻤﺎﯾﺪ‪ .‬ﺟﺴﺖوﺟﻮی ﻣﺤﺼﻮل وﻇﯿﻔﻪ اﺻﻠ اﯾﻦ زﯾﺮﺳﺎﻣﺎﻧﻪ اﺳﺖ و ﺑﺎﯾﺪ در ﺑﯿﻦ اﺳﺎﻣ ﻣﺤﺼﻮﻻت‪،‬‬
‫ﺗﻮﺿﯿﺤﺎت آنﻫﺎ‪ ،‬ﻧﺎم دﺳﺘﻪﻫﺎ ﺑﻪ دﻧﺒﺎل ﻋﺒﺎرت وارد ﺷﺪه ﺗﻮﺳﻂ ﮐﺎرﺑﺮ ﺑ ﺮدد و ﻧﺘﺎﯾﺞ را ﺑﻪ ﺻﻮرت ﻟﯿﺴﺘ از‬
‫ﻣﺤﺼﻮﻻت ﺑﻪ ﺻﻔﺤﻪی ﺷﻤﺎ ﺑﺮﮔﺮداﻧﺪ‪.‬‬
‫– درﺻﻔﺤﻪی ﻟﯿﺴﺖ ﻣﺤﺼﻮﻻت ﺑﺎﯾﺪ اﻣ ﺎن ﺟﺴﺖوﺟﻮی ﭘﯿﺸﺮﻓﺘﻪ ﻓﺮاﻫﻢ ﺷﻮد‪ ،‬ﻣﺜﻼ اﻣ ﺎن ﺟﺴﺖوﺟﻮ‬
‫ﺑﺮ اﺳﺎس ﺗﺎرﯾﺦ اﺿﺎﻓﻪ ﺷﺪن ﻣﺤﺼﻮل‪ ،‬ﻓﺮوﺷﻨﺪه‪ ،‬و ﻏﯿﺮه‪.‬‬
‫– ﺗﻮﺟﻪ ﮐﻨﯿﺪ ﮐﻪ اﻣ ﺎن اﻧﺘﺨﺎب ﺗﺎرﯾﺦ ﻓﺎرﺳ ﺑﻪ روش ﻣﻨﺎﺳﺐ‪ ،‬ﻣﺜﻼ از روی ﺗﻘﻮﯾﻢ ﺷﻤﺴ ﺑﺨﺸ از‬
‫ﺧﻮاﺳﺘﻪ ﻫﺎی ﭘﺮوژه اﺳﺖ‪.‬‬
‫‪٢‬‬
‫ﭘﺮوژهی ﺟﻨ ﻮ‬
‫اوﻟﯿﻦ ﻗﺪم‪ ،‬اﯾﺠﺎد ﯾ ﭘﺮوژهی ﺟﻨ ﻮی ﺟﺪﯾﺪ ﻣ ﺑﺎﺷﺪ‪ .‬ﺗﻨﻈﯿﻤﺎت ﭘﺎﯾ ﺎه داده و دﯾ ﺮ ﺗﻨﻈﯿﻤﺎت ﭘﺮوژه را ﻧﯿﺰ در ﻓﺎﯾﻞ‬
‫‪ settings.py‬اﻋﻤﺎل ﮐﻨﯿﺪ‪ .‬ﻫﻤﭽﻨﯿﻦ در اﯾﻦ ﻗﺴﻤﺖ‪ ،‬ﺑﺮای ﺑﺨﺶﻫﺎی ﻣﺨﺘﻠﻒ ﭘﺮوژه ‪app‬ﻫﺎی ﻣﺮﺑﻮﻃﻪ اﯾﺠﺎد ﮐﻨﯿﺪ‪.‬‬
‫راهاﻧﺪازی ﺑﺨﺶ ﻣﺪﯾﺮﯾﺖ‬
‫راﺟﻊ ﺑﻪ راهاﻧﺪازی ﺑﺨﺶ ﻣﺪﯾﺮﯾﺖ ‪ ٣‬ﺟﻨ ﻮ در ﮐﻼس درس آﻣﻮﺧﺘﻪاﯾﻢ‪ .‬در اﯾﻦ ﺑﺨﺶ از ﭘﺮوژه ﻻزم اﺳﺖ ﺗﺎ ﺑﺨﺶ‬
‫ﻣﺪﯾﺮﯾﺖ ﺟﻨ ﻮ را راهاﻧﺪازی ﻧﻤﺎﯾﯿﺪ و از ﻃﺮﯾﻖ اﯾﻦ ﺻﻔﺤﻪ اﻣ ﺎﻧﺎﺗ ﮐﻪ در ﺑﺨﺶ ﻗﺒﻞ در زﻣﯿﻨﻪی ‪ slideshow‬از‬
‫ﺷﻤﺎ ﺧﻮاﺳﺘﻪ ﺷﺪه ﺑﻮد ﭘﯿﺎدهﺳﺎزی ﮐﻨﯿﺪ‪ .‬ﻫﻤﭽﻨﯿﻦ ﮐﻠﯿﻪی ﻣﺪلﻫﺎی ﭘﯿﺎدهﺳﺎزی ﺷﺪه ﺗﻮﺳﻂ ﺷﻤﺎ ﺑﺎﯾﺪ از ﻃﺮﯾﻖ ﺑﺨﺶ‬
‫ﻣﺪﯾﺮﯾﺖ ﺟﻨ ﻮ ﻗﺎﺑﻞ دﺳﺖرﺳ ﺑﺎﺷﻨﺪ‪.‬‬
‫ﺑﺨﺶ ﻣﺪﯾﺮﯾﺖ ﭘﺎﯾ ﺎه داده‬
‫ﮔﺎﻫ ﺑﻌﺪ از ﺻﺮف ﺳﺎﻋﺖﻫﺎ ﺑﺮای ﭘﺮﮐﺮدن ﺳﺎﯾﺖ ﺧﻮد ﺑﺎ دادهﻫﺎی ﻧﻤﻮﻧﻪی ﮐﺎﻓ ‪ ،‬ﺑﻪ ﻋﻠﺖ ﺗﻐﯿﯿﺮاﺗ ﮐﻪ در ﭘﺎﯾ ﺎه داده‬
‫ﻣ دﻫﯿﺪ ﻣﺠﺒﻮر ﺑﻪ ‪ reset‬ﮐﺮدن آن ﻣ ﺷﻮﯾﺪ‪ .‬در ﭼﻨﯿﻦ ﻣﻮاردی ﺧﻮب اﺳﺖ ﺑﺘﻮاﻧﯿﺪ ﭘﺎﯾ ﺎه دادهی ﺧﻮد را ﺑﻪ ﺻﻮرت‬
‫دﺳﺘ دوﺑﺎره ﭘﺮ ﻧ ﻨﯿﺪ و از اﺑﺰارﻫﺎی اﺗﻮﻣﺎﺗﯿ ﺑﺮای آن اﺳﺘﻔﺎده ﮐﻨﯿﺪ‪ .‬روشﻫﺎی ﻣﺘﻌﺪدی وﺟﻮد دارد ﮐﻪ ﯾ از‬
‫آنﻫﺎ اﺳﺘﻔﺎده از دﺳﺘﻮرﻫﺎی ﻣﺪﯾﺮﯾﺘ ﺗﻐﯿﯿﺮﯾﺎﻓﺘﻪ ‪ ۴‬اﺳﺖ‪ .‬ﺑﺮای ﻣﺜﺎل ﻣ ﺗﻮان ﮐﺎری ﮐﺮد ﺗﺎ ﺑﺎ اﺟﺮای دﺳﺘﻮر ‪python‬‬
‫‪ manage.py initMyDB‬دادهﻫﺎﯾ در ﭘﺎﯾ ﺎهداده اﯾﺠﺎد ﺷﻮﻧﺪ‪.‬‬
‫ﺗﻮﺟﻪ ﮐﻨﯿﺪ اﯾﻦ ﻗﺴﻤﺖ ﻧﻪ ﺗﻨﻬﺎ ﻧﻤﺮهی اﺿﺎﻓ دارد‪ ،‬ﺑﻠ ﻪ ﭘﯿﺎدهﺳﺎزی ﻫﺮﭼﻪ ﺳﺮﯾﻊﺗﺮ آن ﺑﻪ ﺷﺪت ﺑﺮای راﺣﺘ ﺷﻤﺎ‬
‫ﺗﻮﺻﯿﻪ ﻣ ﺷﻮد‪.‬‬
‫‪admin٣‬‬
‫‪Custom Management Command۴‬‬
‫‪٣‬‬
‫ﻃﺮاﺣ ﻣﺪلﻫﺎ‬
‫ﻧﻤﻮدار ‪ ER‬ﭘﯿﺶﻧﻬﺎدی ﺑﺮای ﺳﺎﯾﺖ ﻓﺮوﺷ ﺎه ﺷﻤﺎ در زﯾﺮ آﻣﺪه اﺳﺖ‪ .‬در اﯾﻦ ﻧﻤﻮدار ﺻﻔﺖﻫﺎی ﻣﻮﺟﻮدﯾﺖﻫﺎ ﻣﺸﺨﺺ‬
‫ﻧﺸﺪهاﻧﺪ و ﺑﻪ دلﺧﻮاه و ﺗﺤﻠﯿﻞ ﺷﻤﺎ ﺗﻌﯿﯿﻦ ﻣ ﺷﻮﻧﺪ‪ .‬ﺑﺪﯾﻬ اﺳﺖ ﮐﻪ ﺣﺪاﻗﻞ ﺻﻔﺖﻫﺎ در ﻓﺎز اول دﯾﺪه ﺷﺪهاﻧﺪ‪ .‬ﺗﻮﺟﻪ‬
‫ﮐﻨﯿﺪ ﮐﻪ اﯾﻦ ﻃﺮاﺣ ﻓﻘﻂ ﯾ ﻣﺪل ﭘﯿﺶﻧﻬﺎدی اﺳﺖ و ﻋﺎری از اﺷ ﺎل ﻧﯿﺴﺖ‪.‬‬
‫در اﯾﻦ ﻓﺎز‪ ،‬اﺣﺘﯿﺎﺟ ﺑﻪ ﭘﯿﺎدهﺳﺎزی ﺑﺨﺸ از ﭘﺎﯾ ﺎه داده ﮐﻪ درون ﺧﻂﭼﯿﻦ آﻣﺪه اﺳﺖ‪ ،‬ﻧﯿﺴﺖ‪ .‬ﯾﻌﻨ ﺳﯿﺴﺘﻢ ﻣﺪﯾﺮﯾﺖ‬
‫ﮐﺎرﺑﺮان ﺷﺎﻣﻞ ﻓﺮوﺷﻨﺪه و ﺧﺮﯾﺪار‪ ،‬ﺳﯿﺴﺘﻢ ﻧﻈﺮدﻫ و ﺳﯿﺴﺘﻢ ﺧﺮﯾﺪ در اﯾﻦ ﻓﺎز ﭘﯿﺎدهﺳﺎزی ﻧﻤ ﺷﻮد‪.‬‬
‫• ﻣﻮﺟﻮدﯾﺖ اﺻﻠ ﻓﺮوﺷ ﺎه‪ ،‬ﻣﺤﺼﻮل اﺳﺖ‪ .‬ﻫﺮ ﻣﺤﺼﻮل درون ﯾ‬
‫دﺳﺘﻪ ﻗﺮار ﻣ ﮔﯿﺮد‪.‬‬
‫• ﻫﺮ دﺳﺘﻪ ﻣ ﺗﻮاﻧﺪ ﭼﻨﺪﯾﻦ زﯾﺮدﺳﺘﻪ داﺷﺘﻪ ﺑﺎﺷﺪ‪ ،‬وﻟ ﻫﺮ دﺳﺘﻪ ﺣﺪاﮐﺜﺮ ﯾ ﭘﺪر دارد‪ .‬ﻣ ﺗﻮاﻧﯿﺪ ﺑﺮای راﺣﺘ‬
‫ﻫﻤﺎﻧﻨﺪ ﻓﺎز اول ﻓﺮض ﮐﻨﯿﺪ ﺣﺪاﮐﺜﺮ ﺳﻠﺴﻠﻪی ﻣﺮاﺗﺐ ﺑﯿﻦ دﺳﺘﻪﻫﺎ دو ﺳﻄﺢ اﺳﺖ‪ .‬اﮔﺮ ﺑﺘﻮاﻧﯿﺪ اﯾﻦ ﻣﺤﺪودﯾﺖ‬
‫را از ﺳﻄﺢ ﻓﺮض ﺧﺎرج ﮐﻨﯿﺪ و در ﻫﻨ ﺎم ﺳﺎﺧﺘﻦ ﯾﺎ ﺑﺮوزرﺳﺎﻧ دﺳﺘﻪﻫﺎ ﺗﺮﺗﯿﺐ اﺛﺮ دﻫﯿﺪ‪ ،‬ﻧﻤﺮهی اﻣﺘﯿﺎزی دارد‪.‬‬
‫• ﺻﻔﺤﻪی اول ﺳﺎﯾﺖ ﻓﺮوﺷ ﺎه دارای ﯾ ‪ slideshow‬ﺑﺮای ﻣﺤﺼﻮﻻت ﺑﺮﺗﺮ ﺑﻮد‪ .‬اﯾﻦ ﻣﺤﺼﻮﻻت ﺗﻮﺳﻂ‬
‫ادﻣﯿﻦ ﺳﺎﯾﺖ ﺗﻌﯿﯿﻦ ﻣ ﺷﻮﻧﺪ و ﻫﺮ ﮐﺪام در واﻗﻊ ﯾ »ﻣﺤﺼﻮل« ﻫﺴﺘﻨﺪ ﮐﻪ ﭼﻨﺪﯾﻦ ﺻﻔﺖ دﯾ ﺮ ﻧﻈﯿﺮ ﯾ‬
‫ﻋ ﺲ ﺑﺎ ﮐﯿﻔﯿﺖ ﻣﻨﺎﺳﺐ ﺑﺮای ﺻﻔﺤﻪی اول‪ ،‬ﺗﻮﺿﯿﺢ و ﻏﯿﺮه دارﻧﺪ‪.‬‬
‫‪۴‬‬
‫ﻃﺮاﺣ ﻗﺎﻟﺐ ﺻﻔﺤﺎت‬
‫در ﻓﺎز ﻗﺒﻠ ﭘﺮوژه ﺗﻌﺪادی ﺻﻔﺤﻪی ‪ HTML‬ﻃﺮاﺣ و ﭘﯿﺎدهﺳﺎزی ﮐﺮدﯾﺪ‪ .‬ﯾ از ﮐﺎرﻫﺎی ﺷﻤﺎ در اﯾﻦ ﺑﺨﺶ اﺿﺎﻓﻪ‬
‫ﮐﺮدن ﺻﻔﺤﺎت ﻃﺮاﺣ ﺷﺪه ﺑﻪ ﺳﺎﺧﺘﺎر ﻗﺎﻟﺐ ﺳﺎﻣﺎﻧﻪ اﺳﺖ‪ .‬در اﯾﻦ ﺑﺨﺶ در ﻫﻨ ﺎم اﺿﺎﻓﻪ ﮐﺮدن ﺻﻔﺤﺎت ﺧﻮد ﺑﻪ‬
‫ﭘﺮوژه ﺑﺎﯾﺪ از اﻣ ﺎﻧﺎت ﺳﺎﺧﺘﺎر ﻗﺎﻟﺐ ﺟﻨ ﻮ ﻣﺎﻧﻨﺪ ‪ includes‬اﺳﺘﻔﺎده ﻧﻤﺎﯾﯿﺪ و ﻣﯿﺰان اﻓﺰوﻧ ﮐﺪ ﺧﻮد را ﺑﺎ اﺳﺘﻔﺎده‬
‫از اﯾﻦ ﻣﻮارد ﺑﻪ ﺣﺪاﻗﻞ ﺑﺮﺳﺎﻧﯿﺪ ﮐﻪ در ﻧﺘﯿﺠﻪی آن اﻧﺠﺎم ﺗﻐﯿﯿﺮات و ﻫﻤﺎﻫﻨ ﻫﺎی ﺟﺪﯾﺪ در ﺳﺎﺧﺘﺎر ﮐﻠ ﺻﻔﺤﺎت‬
‫ﭘﺮوژه ﺑﺎ ﺣﺪاﻗﻞ ﺗﻐﯿﯿﺮات در ﮐﺪ ﺻﻮرت ﺑ ﯿﺮد‪ .‬ﺑﻪ ﻋﻨﻮان ﭘﯿﺶﻧﻬﺎد ﻣ ﺗﻮاﻧﯿﺪ ﯾ ﺻﻔﺤﻪی اﺑﺘﺪاﯾ ﺑﺴﺎزﯾﺪ ﮐﻪ ﺻﺮﻓﺎً‬
‫ﻣﻨﺎﺑﻊ ﻣﺸﺘﺮک ﺑﯿﻦ ﻫﻤﻪی ﺻﻔﺤﺎت و ﺳﺎﺧﺘﺎر ﮐﻠ ﯾ ﺻﻔﺤﻪی وب ﻣﺎﻧﻨﺪ ‪ head‬و ‪ body‬را در آن در ﻧﻈﺮ ﮔﺮﻓﺘﻪ‬
‫ﺑﺎﺷﯿﺪ‪ .‬در ﻻﯾﻪی ﺑﻌﺪی ﺑﺨﺶﻫﺎی ﻣﺸﺘﺮک ﺻﻔﺤﺎت ﯾ ﺑﺨﺶ از ﺳﺎﯾﺖ )ﻣﺎﻧﻨﺪ ﺑﺨﺶ ﻧﺎوﺑﺮی ﯾﺎ ﻃﺮح ﭘﺸﺖ ﺻﻔﺤﻪ‬
‫ﮐﻪ در ﺑﯿﻦ ﺻﻔﺤﺎت ﺑﺨﺶ ﻓﺮوش ﻣﺸﺘﺮک اﺳﺖ( ﺑﻪ آن اﺿﺎﻓﻪ ﺷﻮﻧﺪ‪ .‬و در ﻧﻬﺎﯾﺖ در ﻻﯾﻪی آﺧﺮ ﻣﻮارد ﯾ ﺘﺎی ﻣﺮﺑﻮط‬
‫ﺑﻪ ﺻﻔﺤﺎت آن ﺑﺨﺶ در ﻗﺎﻟﺐ ﻣﺤﺘﻮا در ﻧﻈﺮ ﮔﺮﻓﺘﻪ ﺷﻮﻧﺪ‪.‬‬
‫ﻃﺮاﺣ ﺻﻔﺤﺎت ﻣﺪﯾﺮﯾﺖ ﻓﺮوﺷﻨﺪه‬
‫در اﯾﻦ ﺑﺨﺶ اداﻣﻪی ﭘﯿﺎدهﺳﺎزی ﺑﺨﺶ ﻣﺪﯾﺮﯾﺖ ﻣﺤﺼﻮﻻت را ﺑﺮای ﻓﺮوﺷﻨﺪﮔﺎن ﭘ ﻣ ﮔﯿﺮﯾﻢ‪ .‬ﻋﻼوه ﺑﺮ ﺻﻔﺤﻪی‬
‫اﺿﺎﻓﻪ ﮐﺮدن ﻣﺤﺼﻮل ﮐﻪ در ﻓﺎز ﻗﺒﻞ آن را ﭘﯿﺎده ﺳﺎزی ﮐﺮدﯾﺪ و در اﯾﻦ ﻓﺎز ﻋﻤﻠ ﺮد ﺳﻤﺖ ﺳﺮور آن را ﭘﺸﺘﯿﺒﺎﻧ‬
‫ﺧﻮاﻫﯿﺪ ﮐﺮد‪ ،‬ﺑﺎﯾﺪ ﭼﻨﺪ ﺻﻔﺤﻪی ﺟﺪﯾﺪ ﺑﻪ ﺑﺨﺶ ﻣﺪﯾﺮﯾﺖ اﺿﺎﻓﻪ ﮐﻨﯿﺪ‪.‬‬
‫• ﺻﻔﺤﻪی ﺗﻐﯿﯿﺮ ﻣﺸﺨﺼﺎت ﻣﺤﺼﻮﻻت‬
‫ﻋﻤﻠ ﺮد اﯾﻦ ﺻﻔﺤﻪ ﺑﻪ اﯾﻦ ﺻﻮرت اﺳﺖ ﮐﻪ ﻓﺮوﺷﻨﺪه ﺑﺎ ﻣﺸﺎﻫﺪهی ﻟﯿﺴﺖ ﻣﺤﺼﻮﻻت ﺧﻮد ﻣ ﺗﻮاﻧﺪ ﺗﻮﺿﯿﺤﺎت‪،‬‬
‫ﻧﺎم ‪ ،‬ﻗﯿﻤﺖ‪ ،‬ﻣﻮﺟﻮدی و ﺳﺎﯾﺮ ﻣﺸﺨﺼﺎت ﻣﺤﺼﻮل را ﺗﻐﯿﯿﺮ داده و در ﺻﻮرت ﺧﻮاﺳﺖ ﺑﺘﻮاﻧﺪ آن ﻣﺤﺼﻮل را‬
‫ﺣﺬف ﻧﻤﺎﯾﺪ‪.‬‬
‫• ﺻﻔﺤﻪی ﻣﺸﺎﻫﺪه ﺗﺮاﮐﻨﺶﻫﺎ‬
‫در اﯾﻦ ﺻﻔﺤﻪ ﻓﺮوﺷﻨﺪه ﺑﺎﯾﺪ ﺑﺘﻮاﻧﺪ ﻣﺤﺼﻮﻻت ﺑﻪﻓﺮوشرﻓﺘﻪی ﺧﻮد را ﺑﺎ ﺗﻌﺪاد و ﺗﺮﺗﯿﺐ زﻣﺎﻧ و ﻧﺎم ﮐﺎرﺑﺮ‬
‫ﺧﺮﯾﺪار ﻣﺸﺎﻫﺪه ﮐﻨﺪ‪.‬‬
‫در ﺿﻤﻦ ﻣ ﺗﻮاﻧﯿﺪ ﺻﻔﺤﻪﻫﺎی ﭘﯿﺶﻧﻬﺎدی ﺧﻮدﺗﺎن را ﻧﯿﺰ ﺑﻪ اﯾﻦ ﺑﺨﺶ اﺿﺎﻓﻪ ﻧﻤﺎﯾﯿﺪ‪.‬‬
‫ﻻزم ﺑﻪ ذﮐﺮ اﺳﺖ ﮐﻪ ﻧﯿﺎزی ﺑﻪ ﭘﯿﺎدهﺳﺎزی ﮐﺎرای اﯾﻦ ﺻﻔﺤﺎت ﻧﺪارﯾﺪ و ﺻﺮﻓﺎً ﭘﯿﺎدهﺳﺎزی ﻇﺎﻫﺮ ﮐﻔﺎﯾﺖ ﻣ ﮐﻨﺪ‪ .‬وﻟ‬
‫ﺑﺨﺶ اﺿﺎﻓﻪ ﮐﺮدن ﻣﺤﺼﻮل ﮐﻪ در ﻓﺎز ﻗﺒﻞ ﺻﻔﺤﻪی آن را ﭘﯿﺎدهﺳﺎزی ﮐﺮدهاﯾﺪ‪ ،‬در اﯾﻦ ﻓﺎز ﺑﺎﯾﺪ در ﺳﻤﺖ ﺳﺮور‬
‫ﭘﯿﺎدهﺳﺎزی ﺷﻮد‪ .‬اﯾﻦ ﺑﺨﺶ ﺑﺎﯾﺪ ﻣﻮارد اﻃﻼﻋﺎﺗ را ﮐﻪ راﺟﻊ ﺑﻪ ﻣﺤﺼﻮﻻت در ﺑﺨﺶ ﻣﺪل در ﻧﻈﺮ ﮔﺮﻓﺘﻪ ﺑﻮدﯾﺪ‬
‫ﺑﻪ ﻃﻮر ﮐﺎﻣﻞ از ﮐﺎرﺑﺮ درﯾﺎﻓﺖ ﮐﻨﺪ‪ .‬ﭘﺲ ﺻﺮﻓﺎً ﺑﻪ ﭘﯿﺎدهﺳﺎزی ﺳﻤﺖ ﺳﺮور ﮐﺪی ﮐﻪ در ﻣﺮﺣﻠﻪی ﻗﺒﻞ زدهاﯾﺪ اﮐﺘﻔﺎ‬
‫ﻧﻨﻤﺎﯾﯿﺪ‪ .‬روش ارﺳﺎل اﻃﻼﻋﺎت در اﯾﻦ ﺻﻔﺤﺎت و ﭘﺮوﺗ ﻞ آنﻫﺎ ﻧﯿﺰ ﮐﺎﻣﻼ ﺑﻪ دلﺧﻮاه ﺷﻤﺎ اﺳﺖ‪ .‬اﻟﺒﺘﻪ روش ارﺳﺎل‬
‫‪ ajax‬ﮐﻪ در ﻣﺮﺣﻠﻪی ﭘﯿﺶ ﭘﯿﺎدهﺳﺎزی ﮐﺮدهاﯾﺪ ﺑﺎ ﭘﺮوﺗ ﻞ ‪ json‬ﻫﻤﭽﻨﺎن ﭘﯿﺶﻧﻬﺎد ﻣ ﺷﻮﻧﺪ‪ .‬وﻟ ﺷﻤﺎ ﻣ ﺗﻮاﻧﯿﺪ ﻣﺜﻼ‬
‫از ‪ post‬اﺳﺘﻔﺎده ﮐﻨﯿﺪ و ﺻﻔﺤﻪ را از اول ﺑﺎرﮔﺬاری ﻧﻤﺎﯾﯿﺪ‪.‬‬
‫‪۵‬‬