Python¬[¯¸¯S°V¯Z¡GDjango³Ì±j¹ê¾Ô ( ÁcÅé ¦r) |
§@ªÌ¡G¾H¤å²W Á`ºÊ»s/¤å²W»Õ¤u§@«Ç ½sµÛ | Ãþ§O¡G1. -> µ{¦¡³]p -> Python |
ĶªÌ¡G |
¥Xª©ªÀ¡GùÖ®p¥Xª© | 3dWoo®Ñ¸¹¡G 47607 ¸ß°Ý®ÑÄy½Ð»¡¥X¦¹®Ñ¸¹¡I¡i¯Ê®Ñ¡j NT©w»ù¡G 450 ¤¸ §é¦©»ù¡G 338 ¤¸
|
¥Xª©¤é¡G8/28/2017 |
¶¼Æ¡G |
¥úºÐ¼Æ¡G0 |
|
¯¸ªø±ÀÂË¡G |
¦L¨ê¡G¶Â¥Õ¦L¨ê | »y¨t¡G ( ÁcÅé ª© ) |
|
¥[¤JÁʪ«¨® ¢x¥[¨ì§Úªº³Ì·R (½Ð¥ýµn¤J·|û) |
ISBN¡G9789864765690 |
§@ªÌ§Ç¡@|¡@ĶªÌ§Ç¡@|¡@«e¨¥¡@|¡@¤º®e²¤¶¡@|¡@¥Ø¿ý¡@|¡@§Ç |
(²Åé®Ñ¤W©Òz¤§¤U¸ü³sµ²¯Ó®É¶O¥\, ®¤¤£¾A¥Î¦b¥xÆW, YŪªÌ»Ýn½Ð¦Û¦æ¹Á¸Õ, ®¤¤£«OÃÒ) |
§@ªÌ§Ç¡G |
ĶªÌ§Ç¡G |
«e¨¥¡G |
¤º®e²¤¶¡G½u¤W¤U¸ü¤º®e¡G½d¨ÒÀÉ PythonÀ³¥Î·s¸g¨å¡IÄ~ºZ¾P®Ñ¡mPythonªì¾Ç¯S°V¯Z¡n¤§«áªº¬[¯¸¥DÃD¹ê¾Ô¥Nªí§@¡I³Ì¨Î¼öªù²Õ¦XPython X Django¡AÅý§Aªì¾Ç¬[¯¸´N¤W¤â¡IPython¬O¥Ø«e³Ì¨üÅwªïªºµ{¦¡»y¨¥¡ADjango³ôºÙ¬O·í«e³Ì¼öªùªºPythonºô¯¸®Ø¬[¡A¨âªÌµ²¦X¡AÅý¶}µo½ÆÂøªº¸ê®Æ®wºô¯¸Åܱo§ó²³æ¡C¥»®Ñ¤@¦¸ºî¦X¬[¯¸¥²³Æ§Þ¯à¡A´£¨Ñ¬ÛÃö½d¨ÒÀÉ¡AÅýPythonµo´§·¥¤j®Ä¥Î¡A¥ÎDjango¥´³y¥X¶W±j¤¬°Êºô¯¸¡C·Qn¬[¯¸¡A°ß¦³¯u¥¿¹ê¾Ô¡A¤~¬O³Ì¨ÎÅéÅç¡I¡½¹s°ò¦«Ø¸mDjango¶}µoÀô¹Ò¡AÁ׶}©Ò¦³ªì¾Ç»Ùê¡C¡½¥¿³W¤Æºô¯¸¶}µo¬yµ{¡A¥ÑDjango±M®×«Ø¥ß»Papp¶}µo¬°¥D¶b¡A»â²¤¨ä¤¤¶ø¸q¡C¡½·s¤@¥N¶}µo¼Ò¦¡¡A¨Ï¥Îµø¹Ï»P¼Òª©¾Ç²ßDjango¹B§@¤è¦¡¡A¤F¸Ñ®Ø¬[À³¥Îì²z¡C¡½µ²¦X¸ê®Æ®w¶i¦æºô¯¸¶}µo¡A¹B¥ÎDjango¸ê®Æ®wµ²ºc»P¼Ò¦¡¡A´£¨Ñ¸Ô²Ó«Ø¸m¬yµ{¡B¾Þ§@¤è¦¡»PºÞ²z¤¶±ªº¤èªk¡C¡½¥HDjango¹ê§@¸ê®Æ®w¤¬°Êªº¾Þ§@ºëµØ¡u¬d¸ß¡B·s¼W¡Bקï»P§R°£¡v¡AÅý¸ê®Æ®wÀ³¥Î¤£¦A¬O¶}µoºô¯¸ªÌªºµh³B¡C¡½¹B¥ÎCookie»PSession°O¿ýÂsÄýªÌ»P¬ÛÃö¸ê°T¡AÅý¤£¦P¨Ï¥ÎªÌ¯à¦b¦P¤@ºô¯¸¤¤Àx¦s¨Ã¨ú±o¤£¦P¸ê®Æ¡A¨Ï¥Î¤£¦PªA°È¡C¡½²`¤JDjango¨Ï¥ÎªÌºÞ²z¡A²³æ¦Ó¥þ±ªº¨Ï¥ÎªÌ»{ÃÒ¡A»´ÃP§¹¦¨ºô¯¸µn¤J/µn¥X¤u§@¡A±a¤J·|û¾÷¨î¡C¡½³W¹º5Ó¥DÃD¹ê¾Ô½d¨Ò¡G¥]§t·s»D¤½§i¡Bºô¸ô¯d¨¥ª©¡Bºô¸ô¬Ûï¡B¹q¤l°Ó°ÈÁʪ«¨®¡A¥H¤Îµ²¦Xºô¸ô¦a¹Ïªº¬ü¹ºô¶¡A¬[ºc¥X±M·~¹ê¥Îªººô¯¸¡C¡½±Nºô¯¸³¡¸p¨ì§K¶Oªºª¾¦W¶³ºÝ¥»O¡uHeroku¡v¡A®i¥Ü¦Û¦æ¬[³]ªººô¯¸»P«áÄòºÞ²z³£§K·Ð´o¡C |
¥Ø¿ý¡G01 «Ø¸mDjango¶}µoÀô¹Ò Pythonµ{¦¡»y¨¥¬O¥Ñ¦N¦hSùĬ©i(Guido van Rossum) ©Ò³Ð«Ø¡A¬O¤@ºØª«¥ó¾É¦V¡Bª½Ä¶¦¡ªº¹q ¸£µ{¦¡»y¨¥¡C®Ú¾Ú¤@¨Ç¸ûÅv«Âªº¾÷ºc¦pIEEE¡BCodeEval²Îp¡APython»PC¡BJava¬°¥Ø«e³Ì¨üÅwªïµ{¦¡»y¨¥ªº«e¤T¦W¡C Python³Ì¬°¤HºÙ¹Dªº¯S©Ê´N¬O¥iÂǥѦw¸Ë¦UºØ®M¥ó¤£Â_ÂX¥R¨ä¥\¯à¡A·íµM¤]¤£¥Fºô¯¸¬[ºcªº®M¥ó¡G ¦pDjango¡BFlask¡BPyramid¡BBottleµ¥¡A¦ÓDjango«h¬O¥Ø«e¥\¯à³Ì»ô¥þ¡B¨Ï¥Î¤H¼Æ³Ì¦hªºPythonºô¯¸®Ø¬[¡C
02 «Ø¥ß±M®×¤Îapp Django®M¥ó¦w¸Ë§¹¦¨«á¡A§Y¥i«Ø¥ß±M®×¡A¨Ã¦b±M®×¤¤«Ø¥ßapp¡B templates ©Mstatic¥Ø¿ý¡Amigration¸ê®ÆÀÉ¡A¨Ã§Q¥Îmigrate±N¼Ò«¬»P¸ê®Æ®w¦P¨B¡A¦P®É¥²¶·¥H³]©w¨Ï¥ÎÀô¹Ò¡C Djangoªºµ{¦¡¬[ºc¬O±Ä¥Îurlpatternºô§}©M¨ç¦¡¹ï·Ó¤è¦¡¡A½Ð¨Ì´`³W©w¨BÆJ¶i¦æ¶}µo¡C
03 µø¹Ï»P¼Òª© Django¬O¥H¼Ò«¬Model¡Bµø¹ÏView©M±±¨îController¤À¶}ªº¶}µo¬[ºc¡A¦bDjango¤¤ºÙ¤§¬°MTV ¬[ºc¡A©MMVCµy¦³®t²§¡C MTV¥HTemplate¼Òª©(.htmlÀÉ)¿é¤J©Î¿é¥X¸ê®Æ¡A¦bÀÉ©w¸q¨ç¦¡¡A§Q¥Î¸Ó¨ç¦¡¡A³z¹LModel¦s¨ú¸ê®Æ®w¡A¦P®É±N¸ê®Æ¥HTemplate¼Òª©Åã¥Ü¡CTemplate¼Òª©¦³¦Û¤vªº»y¨¥¡A¥i¥HÅã¥ÜÅܼơA¦P®É¤]¦³if±ø¥ó«ü¥O¡Bfor°j°é«ü¥O©MFilter¹LÂo¾¹¡A¨Ã¥[¤Wµù¸Ñ¡C
04 ¸ê®Æ®w¤Î«á»OºÞ²z ¦bÀɤ¤©w¸qclassÃþ§O¡A¨C¤@ÓÃþ§O¬Û·í©ó¤@Ó¸ê®Æªí¡C §Q¥Îadmin¥i¥HºÞ²z«á»O¡A·s¼W¡Bקï©Î§R°£¸ê®Æ¡A¦bAdminºÞ²z¤¶±¤¤¥i¥H³]©wÅã¥Ü¦hÓÄæ¦ì¸ê®Æ¡A¤]¥i¥H¨Ì«ü©wÄæ¦ì¹LÂo¸ê®Æ¡B·j´M©Î±Æ§Ç¡C
05 ¸ê®Æ·s¼W¡B§R°£©M×§ï ªí³æªº¶Ç°e¤è¦¡¡A¦³get©Mpost¨âºØ¡C §Q¥Îobjects.create¤èªk¥i¥H·s¼W¤@µ§¸ê®Æ¡Asave¤èªk¥i¥H±N¸Óµ§°O¿ý¼g¤J¸ê®Æ®w¡C§Q¥Îªí³æ¼Ò«¬«Ø¥ßª«¥ó«á¡A´N¥i¥H¹ï¿é¤J¸ê®Æ§@ÅçÃÒ¡Cdelete¤èªk¥i¥H§R°£«ü©w¸ê®Æ¡A¥i¥Hobjectsª«¥óªºget¡Ball©Îfilter¤èªk¨ú±o¸ê®Æ¡A¦A¥Hdelete¤èªk§R°£«ü©wªº¸ê®Æ¡C§Q¥Îsave¤èªk¥i¥H±N¸ê®Æ¼g¦^¸ê®Æ®w¡A¦p¦¹´N¥i¥Hקï¸ê®Æ¡C
06 Cookie»PSessions Cookie¬O±Nª¬ºA¸ê®Æ°O¿ý¦b¥Î¤áºÝ¹q¸£ªº§Þ³N¡A·íÂsÄýªÌ¶}±Òºô¯¸®É¡A§Y¥i¦bµ{¦¡ªº³]©w¤U±N«ü©wªº¸ê®ÆÀx¦s¦b¥Î¤áºÝ¹q¸£¤¤¡A¨Ã¥i³]©w¸Ó¸ê®Æªº¦³®Ä®É¶¡¡C Session¬OÂsÄýªÌ»P¦øªA¾¹³s½uªº¤u§@´Á¶¡©Ò«O«ùªºª¬ºA¡A¥¦ªº¨Ï¥Î®É¶¡¬O¦b¶}±ÒÂsÄý¾¹«á¶i¤J±Ò°Ê Session¾÷¨îªººô¯¸¶}©l¡A¥unSession¨S¦³¨ì´Á¡A¦^¨ììºô¯¸®É±z·|µo²{ì¨ÓªºSession¤´µM¦³®Ä¡C
07 ¨Ï¥ÎªÌºÞ²z ¦bdjango.contrib®M¥óªºauthÀ³¥Îµ{¦¡¤¤¡A ¤w¤º«ØUser(¨Ï¥ÎªÌ)³oÓ¸ê®Æªí¡A¨Ï¥Î³oÓ¤º«Øªº¸ê®Æªí´N¥i¥H°O¿ý¨Ï¥ÎªÌÓ¤H¸ê°T¡C ¥His_authenticated¥i¥HÀˬd¨Ï¥ÎªÌ¬O§_»{ÃÒ¹L¡C¦pªG¬OUserª«¥ó·|¶Ç¦^True¡A¦ÓAnonymousUserª«¥ó«h¶Ç¦^False¡C auth.login()±µ¦¬request¡Buser¨âӰѼơAµn¤J¦¨¥\«á·|²£¥Í¤@ÓSession¡A¦]¬°³oÓSessionªº¦s¦b¡A¨Ï±o¸Ó¨Ï¥ÎªÌ¥i¥H¸ó¶±«O¦sauth.logout()¥i¥H¶i¦æµn¥X°Ê§@¡Aµn¥X¤§«á¡Aì¨ÓªºSession±N·|³Q²M°£¡C
08 ±MÃD¡G·s»D¤½§i¨t²Î ´X¥G¨C¤@Óºô¯¸³£·|¨Ï¥Î·s»D¤½§i¨t²Î¡A¥i¥H±Nºô¯¸³Ì·s°T®§§Ö³t§iª¾©Ò¦³ÂsÄýªÌ¡CDjango¤º«Ø§¹¾ã·s¼W¡Bקï¡B§R°£¸ê®Æ®wºÞ²z¥\¯à¡A²©ö·s»D¤½§i¨t²Î¨Ï¥Î¤º«Ø¸ê®Æ®wºÞ²z¥\¯à¡A»´ÃP«Ø¥ß¨t²Î¡C ¨Ï¥ÎDjango¤º«Ø¸ê®Æ®wºÞ²z¥\¯àÁöµM»´ÃP¡A¦ý¨C¦¸³£n¶}±ÒºÞ²zªÌºô¶¡A²×¨s¤£°÷¤è«K¡C§¹¾ã·s»D¤½§i¨t²Î¦Û¦æ«Ø¥ß¸ê®Æ®wºÞ²z¥\¯à¡A¦b·s»Dºô¶¤¤´N¥i·s¼W¡Bקï¤Î§R°£·s»D¸ê®Æ¡C
09 ±MÃD¡Gºô¯¸¯d¨¥ª© ºô¯¸¤Wªº¯d¨¥ª©¡A¥i¥H»¡¬O¯¸ªø»Pºô¤Í·¾³qªº¾ô¼Ù¡A©Ò¥H³\¦hºô¯¸³£§Æ±æ¯à°÷©ñ¸m¯d¨¥ª©¡AÅýºô¤Í¥i¥H¦³¤@Ó¥æ¬yªºªÅ¶¡¡C ¥»³¹¶}µoªººô¯¸¯d¨¥ª©¡A¤£¶È¥i¨Ñ³X«ÈÆ[¬Ý¡Aµoªí¯d¨¥¡AºÞ²zªÌ¤]¾Ö¦³§¹¾ãªººÞ²z¥\¯à¡A¨Ã¥i¹ï³X«È¯d¨¥°µ¦^À³¡C
10 ±MÃD¡Gºô¸ô¬Ûï ÀHµÛ¼Æ¦ì¬Û¾÷ªº¬y¦æ¡A©ç¤U¥Í¬¡¤¤ªºÂIÂIºwºw©ñ¨ìºô¸ô¤W»PªB¤Í¤À¨É¡A¤w¸g¬O³\¦h²{¥N¤Hªº¤é±`²ßºD¡C¥»±MÃD±N§¹¦¨¤@Ó¹ê¥Îªººô¸ô¬Ûïµ{¦¡¡AºÞ²zªÌ¥i¥H»´©ö±N¼Æ¦ì·Ó¤ù¤W¶Ç¨ì¬Û諸¤º®e¤¤¤À¨É¡C
11 ±MÃD¡GÁʪ«¨® ·Qn¦bºô¯¸¤W¦Û¤v¶}©±·í¦ÑÁó¶Ü¡H¨º»òÁʪ«¨®´N¬O±zºô¯¸¥²¶·¨ã³Æªº¥Dn¥\¯à¤§¤@¡A¥»±MÃD¥i¥HÀ°§U±z§¹¦¨Áʪ«¬yµ{ªº³W¹º¡B»s§@¤Îºô¸ô¶}©±ªº¹Ú·Q¡IÁʪ«¨®±MÃD¬O¥HÅU«ÈªºÁʪ«¬yµ{»s§@¬°«ÂI¡C
12 ±MÃD¡G®H¨½¬ü¹¦a¹Ï ®H¨½¬ü¹¦a¹Ï±MÃD±N¦bºô¶¤W¥[¤JGoogle¦a¹Ï¡A³z¹L¸ê®Æ®w¤¤°O¿ýªº¬ü¹´ºÂI¡A§Q¥Î¸g½n«×¼Ð¥Ü¦b¦a¹Ï¤W¡CÂsÄýªÌ¤£¶È¥i¥H¦bÂI¿ï´ºÂI®É¬Ý¨ì¤¶²Ð°T®§¡Bµó´ºÁY¹Ï¡A¨Ã¥i¥Hª½±µ¶i¤Jµó´º¼Ò¦¡¨ÓÀ˵ø¯u¹êªºµó´º¹Ï¤ù¡AÅý¬ü¹ªº¸ê°Tµ²¦X¦a¹Ï¡A¨Ï¾ãÓ±MÃDªº¥\¯à§ó¥[¹ê¥Î¡C
13 ³¡¸pºô¯¸¨ìHeroku ±Nºô¯¸¸m©óPaaS(Platform as a Service)ºô¸ôªA°È¥»O¬O¥Ø«e¤j¦h¼Æºô¯¸¶}µoªÌªº¿ï¾Ü¡APaaS ±Nºô¯¸µø¬°¤@ÓÀ³¥Îµ{¦¡¡A¥un½Õ¾ãºô¯¸ªºµ²ºc²Å¦XPaaS ªº³W«h¡A¨t²Î´N¥i¥¿±`¹B¦æ¡C PaaSªºÀuÂI¬O¶}µoªÌ¥u»Ý±Mª`©óºô¯¸ªº¥\¯à¡A¨ä¾l¥D¾÷¬ÛÃö¨Æ©y³£¥ÑPaaS ¥h¾Þ¤ß¡C¥Ø«eGoogle¡BMicrosoftAzure¡BAmazon¤ÎHeroku³£¦³´£¨ÑPaaSªA°È¡A¨ä¤¤Heroku¦³´£¨Ñ§K¶O¤è®×¡A³Ì¾A¦X¤@¯ë¨Ï¥ÎªÌ§Q¥Î¡C |
§Ç¡G |