[સંગીત વગાડવાનો] એઝરા Zigmond: હાય, દરેકને. આજે બહાર આવતા માટે આભાર. આ સેમિનાર "પાયથોન છે વેબ બાટલી સાથે એપ્લિકેશન્સ. " તેથી, હું વાત કરવા જઈ રહ્યો છું શા માટે વિશે થોડુંક તમે બનાવવા માટે બાટલી ઉપયોગ કરવા માંગો છો શકે છે Python સાથે વેબ એપ્લિકેશન્સ, વિરોધ ત્યાં ત્યાં બહાર કેટલાક અન્ય માળખા ગમે સૌથી વધુ સારી રીતે ઓળખાય છે જે જેંગો. આ પેટાશીર્ષક છે "અને કંઈક છે જે peewee, " અમે કેવી રીતે વિશે વાત કરવા જઈ રહ્યાં છો એસક્યુએલ ડેટાબેઝ સાથે ક્રિયાપ્રતિક્રિયા કરે છે. તે ખરેખર સરસ બનાવે છે. તેથી, અહીં માત્ર એક ઝડપી rundown છે હું પર જાઓ કરવા માંગો છો. તેથી, પ્રથમ, માત્ર એક સ્લાઇડ કે, ક્વિકસ્ટાર્ટ હશે જે બધું મેળવવા માટે કેવી રીતે છે તમારા કમ્પ્યુટર પર સુયોજિત કરો. હું દર્શાવીને કરી જાઉં છું મારા સ્થાનિક મેક મશીન પર આ તે માત્ર કારણ કે હું આ કર્યું છે જ્યાં પહેલાં, હું તેની સાથે સૌથી વધુ આરામદાયક છું પરંતુ આ ચોક્કસપણે છે આ CD50 IDE પર શક્ય છે. તેથી, તે પછી, હું કરવા માંગો છો , બાટલી શું દાખલ અને તમે સહમત તમે શા માટે જોઇએ પ્રથમ સ્થાને ઉપયોગ કરે છે. પછી, હું એક ઝડપી આપવા પડશે તમે શું ઉદાહરણ બાટલી, ઝડપી ઉદાહરણ માં કરી શકો છો તમે peewee માં શું કરી શકો, અને પછી હું તમને એક વધુ દેખાશે સંપૂર્ણ ઉદાહરણ એપ્લિકેશન હું અમે તે સાથે મૂકવામાં છે કે એકસાથે લઈ જવામાં કરી શકો છો. અને પછી છેલ્લે, છેલ્લી સ્લાઇડ, હું તમે જુઓ કે કેટલાક સ્રોતો વધુ માહિતી માટે ઓનલાઇન છે. આ એક સંપૂર્ણ નથી બાટલી કેવી રીતે વાપરવા માટે ટ્યુટોરીયલ. અને હું છોડી આશા પડશે પ્રશ્નો માટે કેટલાક સમય. કોઈપણ ફક્ત સ્થાનિક જોવાનું જેમ કે, મધ્યમાં પોકાર જો તમે કોઇ પ્રશ્નો હોય તો. તેથી ઝડપી સ્થાપન સામગ્રી, તમે સાથે પાલન કરવા માંગો છો, અથવા તમે આ વિચાર કરવા માંગો છો, તો તમારા પોતાના મશીન પર, હું Python 2.7.10 ઉપયોગ કરી જાઉં છું. બાટલી સાથે કામ કરે છે 3 પાયથોન, પરંતુ હું ગમે કારણ કે ત્યાં, પાયથોન 2 મદદથી કેટલાક પાયથોન પેકેજો કે હજુ સુધી 3 સાથે કામ કરતુ નથી. તમે ફળનું નાનું બીજ સ્થાપિત કરેલ હોય, જે એ Python પેકેજ વ્યવસ્થાપક છે, તમારા પાયથોન છે તો મને લાગે છે એક કરતાં વધારે અથવા 2.7.9 સમાન, તમે તે પહેલાથી જ સ્થાપિત છે, તે છે આ પેકેજો સ્થાપિત કરવા માટે સુપર સરળ છે. તમે ફળનું નાનું બીજ સ્થાપિત કરી શકો છો બાટલી, peewee સ્થાપિત ફળનું નાનું બીજ, સામાન્ય રીતે તમે માત્ર sudo ચલાવવા માટે છે જેથી પરવાનગીઓ બહાર કામ કરે છે. અને, તમે ઉપયોગ કરી રહ્યા છો તો એક સુપર Python ની જૂની આવૃત્તિ, હું તમારી પાયથોન અપડેટ કરવાની ભલામણ અથવા EasyInstall ઉપયોગ ફળનું નાનું બીજ સ્થાપિત કરવા માટે. તેથી, આગામી પ્રશ્ન છે, બાટલી શું છે? અને હું પ્રથમ ધારી વાજબી પ્રશ્ન હું આશ્ચર્ય લાંબા સમય છે, એક વેબ એપ્લિકેશન શું છે? એક શબ્દ છે જે છે કારણ કે હું ઘણો આસપાસ ફેંકવામાં લાગે છે હું ખરેખર ખબર ન હતી કે. અને હું શ્રેષ્ઠ લાગે છે કે વેબ એપ્લિકેશન શું છે, ઉદાહરણ તરીકે, ખરેખર CS50 ફાયનાન્સ, જ્યાં છે તે ખરેખર માત્ર એક વેબસાઇટ નથી પરંતુ તે કંઈક કે જે તમે સૉર્ટ સાથે વાર્તાલાપ કરી શકે છે. વપરાશકર્તા એકાઉન્ટ્સ છે અને વિવિધ વસ્તુઓ તમામ પ્રકારના. તેથી, બરાબર તમે જ્યાં ડ્રો એક વેબસાઇટ છે શું વચ્ચે લીટી, અને વેબ એપ્લિકેશન, શું પ્રકારની છે મનસ્વી છે, પરંતુ હું વિચાર ધારી, તે એક વેબસાઇટ કરતાં વધુ કંઈક છે અને તે એક ઉપયોગી એપ્લિકેશન છે. તેથી, બાટલી એક માળખું છે Python ઉપયોગ કરીને વેબ એપ્લિકેશન્સ બનાવી રહ્યા છે. અને આસ્થાપૂર્વક, અંત સુધીમાં આ કારણે, હું તમને સહમત થશે તમે ખરેખર કંઈક લખી શકે છે CS50 ફાયનાન્સ જેવા પાયથોન ઉપયોગ જે હું વ્યક્તિગત, PHP, કરતાં ઘણો વધુ સારી રીતે ગમે. તેથી, બાટલી છે, તેઓ કૉલ microframework, જેના દ્વારા, તેઓ તેને ખૂબ જ અર્થ સરળ છે, પરંતુ એક્સ્ટેન્સિબલ. તેથી, તે તમને જરૂર છે તે માત્ર છે પરંતુ જો તમે વધુ સુવિધાઓ માંગો છો, તો તે તેમને લાવવા માટે સરળ છે. પરંતુ તે માત્ર કારણ કે microframework, નથી તે નાના પ્રોજેક્ટ માટે માત્ર છે કે થાય છે. હું કહે છે કે અહીં એક લિંક છે ઓબામા 2012 માં બાટલી વપરાય છે કે જે તેમના પ્રચાર માટે વેબસાઇટ છે, જે આસ્થાપૂર્વક, એક સમર્થન કંઈક છે. પરંતુ વસ્તુ કે હું ખરેખર બાટલી વિશે ગમે , તે ખરેખર નથી કે છે તમે માટે નિર્ણયો કોઇ પણ પ્રકારની. જસ્ટ અમે છો કારણ કે વેબ એપ્લિકેશન્સ વિશે વાત કરે છે, હું રૂબી સરખાવવા માટે છે ટ્રેનની અને જેંગો, જે બંને મહાન માળખા છે, પરંતુ તેઓ બંને ધારણાઓને વિશે તમે કેવી રીતે કરવા માંગો છો ડેટાબેઝો સાથે સંચાર કરે છે, તમે કેવી રીતે તમારા પ્રસ્તુત કરવા માંગો છો વિચારો, અને તેઓ ચોક્કસપણે છો કે સારા પાસાઓ. ઉદાહરણ તરીકે, રૂબી પર રેલ્સ માટે આ સક્રિય રેકોર્ડ સિસ્ટમ છે, જે ખરેખર સરસ છે માહિતી સાથે સંપર્કવ્યવહાર કરવા માટે માર્ગ છે, પરંતુ તમે પર રૂબી ઉપયોગ કરવા માંગો છો, તો રેલ્સ, તમે પ્રકારના કે માં બંધાયેલ કરી રહ્યાં છો. પરંતુ બાટલી સાથે, હું પડશે peewee સાથે તમને બતાવે છે, તમે ગમે સૉર્ટ ઉપયોગ કરી શકો છો Wego ના ડેટાબેઝ તપાસવામાં તમે કરવા માંગો છો, અને તમે માત્ર તે ખેંચી શકે છે બાટલી માં એક એક્સ્ટેન્શન તરીકે. તેથી કે શા માટે હું ખરેખર છે બાટલી, જેમ કે તે છે તમારા માટે ધારણાઓને નથી વસ્તુઓ પર આધારિત તમે ખરેખર જરૂર નથી. તેથી, શા માટે તમે બાટલી ઉપયોગ કરવો જોઇએ? લાભ તે માત્ર છે ખરેખર કોર લક્ષણો ધરાવે છે તે માં સમાયેલ તમને જરૂર છે. તેથી, જો તમે વિશે ચિંતા કરવાની જરૂર નથી વસ્તુઓ સંપૂર્ણ ટોળું સમજવામાં તમે ખરેખર જરૂર નથી. તમે ચિંતા કરવાની જરૂર ન હોય લક્ષણો બંધ કરી દેવાનો વિશે તમે ખરેખર જરૂર નથી. હું ઉલ્લેખ કર્યો છે, તે સુપર છે વસ્તુઓ એક્સ્ટેન્શન્સ માં ઉમેરવા માટે સરળ તમને જરૂર નથી. તેમને કેટલાક બાટલી છે તે માટે પોતાના આધાર. તેથી બાટલી કહેવાય કંઈક છે કે જે સંચાલન મિરર જે સંચાલક, જેંગો પૂરી પાડે છે કે પેનલ, કે જે તમને એક સરસ દ્રશ્ય આપે છે તમારી વેબસાઇટ સંચાલિત. પરંતુ ફરીથી, તમે છો, તો કંઈક સરળ બનાવે છે, તમે કદાચ એક મોટી સંચાલક જરૂર નથી પેનલ, તેથી હું તે સુપર સરસ લાગે છે. અને ગેરફાયદા છે, કે જે હોય છે તમે આ બોક્સની બહાર ઓછી શક્તિ હોય છે. તેથી, જો તમે પ્રથમ બાટલી ઉપર ખોલો છો ત્યારે, અને તમારા Python કાર્યક્રમ માં, તમે માત્ર બાટલી થી લખો આયાત *, અથવા ગમે, તમે બરાબર બધા વિચાર નથી લક્ષણો તમે ઇચ્છો શકે છે. અને તેથી તમે વધુ સ્પષ્ટપણે છે તમે કરવા માંગો છો સુવિધાઓ યાદી આપે છે. જેથી એક ગેરલાભ છે, પરંતુ હું નાની વેબ માટે મકાન લાગે છે કે હું જેમ એપ્લિકેશન્સ દર્શાવે કરવા જાઉં છું તમે તે ખરેખર એક સમસ્યા નથી. અને છેલ્લા વસ્તુ શું છે લખતી વખતની ભૂલો છે, કે જે કહે છે માનવામાં આવે છે, ઓછી એકવિધતા હોય છે બાટલી વાપરવા માટે કેવી રીતે સંમેલનો, ત્યાં જ ઘણા નથી કારણ કે વ્યવસાયિક ઉપયોગ કરે છે લોકો જેંગો સરખામણીમાં. તેથી, જો તમે કંઈક જોવા હોય તો, જેંગો માં "કેવી રીતે હું એક્સ કરવું", તમે કદાચ તે મળશે. સારી ડિઝાઇન છે તમે ઉપયોગ કરી શકો પેટર્ન, પરંતુ બાટલી સાથે, તે છે સૉર્ટ તમારા પોતાના માર્ગ જાય છે, ફક્ત તે છે, કારણ કે ખૂબ નાના પુસ્તકાલય. તેથી તે છે ગેરફાયદા છે, પરંતુ મને લાગે છે તે હજુ પણ ઉપયોગ કરવા માટે એક સારું પુસ્તકાલય છે. તેથી આપણે માત્ર અધિકાર બાટલી માં બાંધી દો. આ ચોક્કસપણે જતાં નથી સંપૂર્ણ ટ્યુટોરીયલ હોઇ શકે છે, પરંતુ તે તમને એક વિચાર આપે છે વસ્તુઓ માળખું કેવી રીતે, અને તેથી તમે જઈને આરામદાયક લાગે છે બંધ અને દસ્તાવેજીકરણ જોઈ અને વધુ શોધવા. તેથી, મને ખરેખર ખોલો દો પ્રથમ સરળ ઉદાહરણ તરીકે, અને તમે શું દર્શાવે છે કે જેવી લાગે છે, અને પછી અમે પડશે થોડી વધુ નીચે તૂટી જાય છે. તેથી આ અહીં, મને તે ચાલી વિચાર કરીએ. તેથી, હવે હું મારા કાર્યક્રમ ચાલી રહ્યો છે. હું સફારી અપ ખોલવા માટે જાઉં છું તે મારા સ્થાનિક યજમાન પર ચાલી રહ્યું છે. તેથી હું ફક્ત આ મોટી બનાવવા જઈ રહ્યો છું. પરંતુ સ્થાનિક યજમાન: 5000 અને તેથી, હમણાં, આ બધા કરે છે છે, તમે વેબસાઇટ ની મુલાકાત લો, ત્યારે તે "હેલો, બાટલી" છાપે જે સુપર ઉપયોગી નથી પરંતુ હું તે ઠંડી લાગે છે અહીં આ થોડું ફાઈલમાં, અમે વેબ સર્વર ચાલી રહ્યું હોય કંઈક કે જે બહાર છાપવા છે. તેથી, ચાલો વાસ્તવમાં જુઓ એક બીજા માટે કોડ અંતે, અને થોડી તે તોડી. માપ અહીં દરેકને માટે સારું છે? તેથી, આસ્થાપૂર્વક, તમે કંઈક છો પાયથોન ઉપયોગ આરામદાયક. હું અમે જોઈ શકો છો કે ધારી રહ્યા છીએ છું પાયથોન અને તે દ્વારા વાંચી શકાય છે. તમારા વિશે કોઇ પ્રશ્નો હોય તો કંઈપણ હું પણ છે કે ઉપર જઈ શકે છે. તેથી પ્રથમ વાક્ય બાટલી થી છે, અમે એક મૂડી સાથે, બાટલી આયાત કરો "એફ" જે તમામ જેવું છે તમને જરૂર છે કે કી લક્ષણો. જ્યારે તમે લખી રહ્યાં ફાઇલ અને ઉપયોગ કરીને બાટલી, તમે આયાત કરવા માંગો છો જઈ રહ્યાં છો, કે બધા મુખ્ય વસ્તુઓ છે માત્ર કારણ કે. અમે શું આગામી વસ્તુ, અમે છે માત્ર આ કાર્ય બાટલી કૉલ એક એપ્લિકેશન પદાર્થ બનાવવા માટે, અને તમે છો માટે હંમેશા કરવા માંગો છો જઈ રહી છે. અને પછી, નીચે જમ્પિંગ નીચે ઝડપથી આ ભાગ અહીં છે, છે જે 'if_name _ == "_ main_" એ Python સંમેલન જેવું. તેથી આ માત્ર જો તમે ચલાવવા કરશે સીધા પાયથોન મદદથી આગળ આ ફાઇલ ચલાવો. પછી, અમે જે કરશે, app.run કૉલ ખરેખર જઈને એપ્લિકેશન શરૂ કરો. તેથી, તે મુખ્ય માળખું છે કે જો તમે કોઇ બાટલી કાર્યક્રમમાં પડશે, તમે આ પડશે એપ્લિકેશન = બાટલી (_name_), અને પછી app.run. તેથી, બે વસ્તુઓ હું હોય છે કે અહીં, અમે વધુ રૂટ કૉલ શું છે. તેથી, ચાલો વિશે વાત કરો થોડો વધુ રૂટીંગ. હું પાછા સ્લાઇડ પર જાઓ પડશે. તેથી સૌથી મૂળભૂત બાટલી માં કન્સેપ્ટ રૂટીંગ છે. અને તે વિચાર છે કે તમે Python માં કાર્યો સોંપી ખાસ સરનામાં પર તમારા વેબ પૃષ્ઠ પર. તેથી, જ્યારે તમે કરવા માંગો છો એક નવો માર્ગ બનાવવા માટે, તમે આ @ app.route ઉપયોગ કાર્ય શોભનકળાનો નિષ્ણાત. તેથી, જો તમે સાથે પરિચિત નહિં હોય, તો છે Python માં કાર્ય decorators, તે આ ખ્યાલ છે કે તમે એક કાર્ય લેવા દે અને બીજું કંઈક સાથે ઘેરાયેલા. તેથી ખરેખર, આ શોભનકળાનો નિષ્ણાત શું કરે છે, , તે નીચે કાર્ય લે છે અને તે વધુ માહિતી ઉમેરે છે તે છે, પરંતુ શું બાટલી ખરેખર તે થાય બનાવવા નથી સુપર નથી નિર્ણાયક છે, પરંતુ મહત્વનું શું છે, કે તમે માર્ગ પહેલાં તો પછી આ @ app.route મૂકી, અને માર્ગ સરનામું, જેથી સ્લેશ અમે શું અમે ફક્ત વેબ પેજ ખોલો ત્યારે જોવા મળી હતી. તેથી તે હોમપેજ છે. તે માત્ર સ્લેશ માર્ગ છે. અને પછી તમે આ કાર્ય છે. આ કાર્ય નું નામ તમે ઇચ્છો ગમે હોઈ શકે છે. તે આવશ્યકપણે નથી માર્ગ સાથે કરી છે. અને પછી, ગમે કાર્ય વળતર, કાર્ય શબ્દમાળા પાછા જોઈએ. અને કે જેઓ શબ્દમાળા કરી શકો છો , એચટીએમએલ અથવા કંઈપણ સમાવે અને તે શું મળશે ખરેખર છે HTML તરીકે તમારા વેબ બ્રાઉઝર પરત ફર્યો, અને તે રેન્ડર કરશે. તેથી આ જ કોડ છે કે ઉદાહરણ હતો હું માત્ર ચાલી હતી કે, તેથી અમે સ્લેશ મુલાકાત લો ત્યારે, તે હેલો વર્લ્ડ કાર્ય, કહે છે, જે માત્ર એક શબ્દમાળા હેલો, બાટલી આપે છે, અને તે સ્ક્રીન પર મુદ્રિત નહીં. તેથી અન્ય ઉદાહરણ છે, છે, કે જે જ્યારે તમે હેલો / મુલાકાત, તે હેલો વર્ડ, બહાર છાપે છે ખરેખર, હેલો વર્લ્ડ કહેવું જોઈએ, પરંતુ કે ઇરાદાપૂર્વક હતી ડોળ દો. તેથી આપણે વાસ્તવિક ઝડપી સુધી ખેંચી દો. તેથી જો તમે હેલો / localhost પર જાઓ, તો તે હવે કંઈક બીજું છાપશે. તેથી કેવી રીતે માત્ર એક ઝડપી ઉદાહરણ છે તમે બે અલગ માર્ગો બનાવી શકો છો. તેથી, અત્યાર સુધી આ સુપર ઉપયોગી નથી તમે કરી શકો છો એક સમગ્ર ઘણો નથી, તમે માત્ર સાથે તમામ કરી શકે અલગ અલગ HTML પૃષ્ઠો કર્યા, અને તમે એક ખાસ મુલાકાત લો ત્યારે પાનું તે માત્ર પાનું લોડ કરે છે. તેથી આપણે કેટલાક વધુ જોવા દો તમે કરી શકો છો ઉપયોગી વસ્તુઓ. તેથી, એક વસ્તુ તમે હોઈ શકે છે કે હું ખેંચાય કે ઉદાહરણ સૂચન ઉપર, હું app.run હતું કે છે (ડિબગ = સત્ય) છે. અને તેથી, આ શું ડિબગ દલીલ છે, કરે છે તમે તમારા વેબ સર્વર ચલાવવા ત્યારે, તમે તમારી અરજી કરશો ત્યારે, તમે ફાઈલ બદલવા માટે, તે કરશે આપોઆપ સર્વર ફરીથી લોડ કરો. અને તેથી તમે ખરેખર ન હોય સુપર ઉપયોગી છે કે જે પુનઃપ્રારંભ પાયથોન. મને લાગે છે કે બતાવી શકે છે. મારા કોડ ખેંચી દો તે ટાઈપો સાથે, અને તે ટાઈપો ત્યાં મૂકી હતી ડોળ ઈરાદાપૂર્વક ઉપદેશક હેતુઓ માટે. તેથી આપણે આ પાછા ઉમેરો. તેથી હવે તે હેલો વર્લ્ડ કહે છે. હું તેને બચાવે છે. અને અમે પાછા ખેંચવાનો અપ તો ટર્મિનલ, તમે તે પુનઃશરૂ છે કહે છે કે, તે થોડા બદલાવ શોધેલ છે, કારણ કે અને તેથી હવે અમે આ પૃષ્ઠને ફરીથી લોડ જ્યારે તે યોગ્ય વસ્તુ છાપશે. તેથી ડિબગ કે સુપર ઉપયોગી છે. પણ, તમે કોઇ હોય તો ભંગાણ જેવું છે, જેથી મને આ એપ્લિકેશન ક્રેશ બનાવવા દો હોવાના તે શબ્દમાળા પાછા નથી. તેથી, માત્ર તે હોય ચાલો કેટલાક કારણોસર નહીં આવો. અને પછી હું આ મુલાકાત લો ત્યારે પાનું, તે માત્ર ભાંગી જશે, પરંતુ સર્વરે માત્ર તે તૂટી નથી ખરેખર તમે એક સુપર ઉપયોગી પાછી આપે છે બધું ટ્રેસ ખોટું થયું છે. અને, ખરેખર સરસ શું છે કે જે આવે છે આ પાછળ ટ્રેસ કોઈપણ પગલું ખાતે, તમે એક ઇન્ટરેક્ટિવ ખોલો શકે અહીં શેલ, અને પ્રકારની શું છાપે ચલો તમે પર એક નજર માંગો છો. અને તેથી ડિબગીંગ ખરેખર છે બહાર figuring માટે ઉપયોગી શું સાથે ચાલી રહ્યું છે તમારા સર્વર, બદલે માત્ર જોયા 500 આંતરિક જેવા PHP કંઈક સુપર નકામું છે, જે સર્વર ભૂલ. એક વસ્તુ છે, ચેતો કે તમે તમારા એપ્લિકેશન મૂકવામાં જો તેથી તે જાહેર જનતા માટે દૃશ્યમાન છે તમે ક્યારેય ડિબગ સ્થિતિ પર છોડવા માંગો છો, લોકો ખરેખર કરી શકો છો કારણ કે કે કન્સોલ વાપરો કે જે હું તમે કોડ ચલાવાય દર્શાવ્યું. તેથી તેઓ કોઈપણ જેવા બહાર છાપી શકો છો તમે ત્યાં છે ગુપ્ત કોડ્સ, તેઓ બરાબર જોઈ શકો છો કેવી રીતે તમારી વેબસાઇટ કામ કરે છે. તેથી તે ખરેખર ઉપયોગી છે પરીક્ષણ માટે છે, પરંતુ હંમેશા પહેલાં તેને બહાર લેવા માટે ખાતરી કરો તમે ઑનલાઇન કંઈપણ પ્રકાશિત. તેથી જ્યારે તમે કંઈક ઉપયોગ કરી રહ્યાં છો PHP, જેમ, આ વિચાર છે તમે પસાર કરી શકાય છે વેબ પાનાંઓ વચ્ચે માહિતી ખરેખર આ માહિતી મૂકવા દ્વારા વિચાર વિનંતી છે, જે URL માં, પરંતુ બાટલી, તમે ખરેખર કરી શકો છો સૉર્ટ કરો કે કંઈક કરવું, છે કે માર્ગ હોવાના તે એક ભાગ તરીકે એક ચલ. તમે આ જુઓ તો તેથી અહીં સ્ક્રીન પર, ઉદાહરણ તરીકે, અમે છે કે માર્ગ છે ('હેલો / /'), અને તેથી, તમે મુલાકાત લો છો તો હેલો / / કંઈક કે જે કંઈક ખરેખર ભરેલ વિચાર રહ્યું છે નામ ચલ માં. અને કાર્ય કે નોટિસ કે માર્ગ સાથે આવે છે પરિમાણ માં લેવા માટે છે નામ તે ખરેખર કરશે કે જેથી આ કાર્ય માં પસાર કરો. અને પછી, એક વાર તમે છો કે કાર્ય ની અંદર, તમે જેમ કે સારવાર કરી શકે છે સામાન્ય પાયથોન ચલ, અને તેથી તે પછી, તે હેલો છાપે છે, અને તે મદદથી નામને ભરો કરશે કેટલાક શબ્દમાળા ફોર્મેટિંગ. તેથી રાઉટીંગ ચલ ભાગો ઉમેરવા માટે, તમે ચિહ્નિત કોણ કૌંસ વાપરો. અને વૈકલ્પિક રીતે, તમે ઉપયોગ કરી શકો છો શું પરિવર્તક કહેવાય છે. અને તેથી, તમે આ મૂકી તો કોલોન સાથે એનોટેશન, તમે તે છે સ્પષ્ટ કરી શકો છો પૂર્ણાંક, અથવા એક ફ્લોટ, અથવા પાથ, અને તે આપોઆપ કે રૂપાંતરિત કરશે. પણ તમે રૂપાંતર કરી શકો છો પાયથોન કાર્ય અંદર, માત્ર એક કાસ્ટ ઉપયોગ કરીને, પરંતુ ક્યારેક તો તમે તેને પૂર્ણાંક છે કે જે ખાતરી કરવા માંગો છો, તમે તે મૂકી શકો છો ત્યાં રૂપાંતર નિયમ. તેથી આપણે એક ઉદાહરણ અપ ખેંચવાનો દો કેટલાક ચલ નિયમો. અહીં, આ મૂળભૂત જ છે બાટલી આયાત સાથે માળખું બાટલી, એપ્લિકેશન = બાટલી (_name_) અને પછી તે ઓવરને અંતે ચાલી રહ્યું છે. અમે આ બે અલગ અલગ હોય છે અહીં ચલ માર્ગ. અને પ્રથમ એક છે, હું દર્શાવે છે કે એક કે હતી, જે સ્લાઇડ માં તે માત્ર એક શબ્દમાળા નામ લે અને તે નામ હેલો છાપશે. અને પછી, બીજા એક રૂપાંતર ઉપયોગ કરે છે. તેથી આ આપોઆપ કન્વર્ટ થશે પૂર્ણાંક માટે, અને પછી, પૂર્ણાંક ડબલ અને તે છાપે. અને, અમે કોઇ પણ પ્રકારની નથી તે અંદર રૂપાંતર બાટલી કે કાળજી લે છે, કારણ કે. તેથી આપણે આ ચાલી વિચાર કરીએ. તમે એક બાટલી હોય ત્યારે અરજી ચાલી, તમે તેને બહાર સી નિયંત્રિત કરી શકો છો સર્વર ચાલી રોકવા માટે. અને પછી હું ચલો ચાલશે. તેથી આપણે localhost / હેલો / એઝરા પર જાઓ અને આસ્થાપૂર્વક, આ મને હેલો કહો આવશે. તેથી તે ચલ, મારું નામ લીધો માર્ગ છે, અને તે અહીં તે ભરી. તેથી હું પણ ઝડપી બતાવીશું આ ડબલિંગ ઉદાહરણ. તેથી જો તમે 3 / ડબલ / પર જાઓ, તો તે 6 છાપશે. તેથી આ કાળજી લીધી અમારા માટે રૂપાંતર. તેથી તમે પણ સાથે કરી શકો છો ફ્લોટ, અને ખાસ કંઈક છે, તમે કંઈક સ્પષ્ટ કરવાની જરૂર છે, તો તે સ્લેશ સ્વીકારી શકો છો કે જે પાથ, પરંતુ તે સામાન્ય રીતે એક મુદ્દો ન હોવી જોઈએ. અત્યાર સુધી અમે હજુ પણ હોય છે માત્ર પરત કરવામાં આવી ખૂબ જ રસપ્રદ નથી કે જે શબ્દમાળાઓ. અમે ખરેખર પરત કરી શકે છે શાબ્દિક HTML શબ્દમાળા. તેથી તે કોડ અમે કંઈક દાખલ કરી શકો છો બી ટેગ તે બોલ્ડ બનાવવા માંગો, પરંતુ મોટા ભાગના સમય તમે ખરેખર માંગો છો નથી HTML કોડ લખી શકાય તમારા પાયથોન કોડ. તે ખરેખર અવ્યવસ્થિત નહીં અને તે એક સારા સમય નથી. બાટલી અમને અલગ કરવા માટે પરવાનગી આપે છે ઢાંચો કહેવાય છે તે માં HTML, અને તેથી જો તમે વિચારી રહ્યાં છો ના MVC મોડેલ દ્રષ્ટિએ તમે પરિચિત છો કે, આસ્થાપૂર્વક, કામ CS50 ફાયનાન્સ સાથે થોડો, તમે Python ફાઇલો વિચાર કરી શકો છો નિયંત્રક, જ્યાં વધુ હોવાથી તેઓ ગમે સાથે સંપર્કમાં આવવાની છે તમે હોઈ શકે છે માહિતી મોડેલ. અને પછી તેઓ જોવાઈ બહાર ફોન આવે છે અને તે જુઓ જાણકારી પસાર માહિતી ભરવા માટે HTML માં તેને જરૂર છે. અને અમે તે દૃશ્યો કૉલ શું વર્ગ નમૂનાઓ છે. તેથી બાટલી અન્ય પાયથોન વાપરે મોડ્યુલ તે આપમેળે ચાલશે તમે સ્થાપિત કરવા ફળનું નાનું બીજ જ્યારે સ્થાપિત બાટલી Jinja કહેવાય છે, જે તમે આ ઉમેરી શકો છો એચટીએમએલ એનોટેશંસ તમે સ્ક્રીન પર જોવા કે, કરી શકો છો તમે, શરતો જેવી વસ્તુઓ મૂકી અને HTML માં આંટીઓ. તેથી તે તમે કેવી રીતે જેમ થોડો લાગે છે એક HTML ફાઇલ અંદર PHP ઉપયોગ કરી શકે છે, પરંતુ આ માત્ર ત્યારે બાટલી છે સર્વર, HTML ફાઇલ આપે છે તે આ templating એન્જિન ચાલશે અને આ દ્વારા પાર્સ અને વસ્તુઓ ભરો. તેથી બાટલી એક render_template કાર્ય છે તમે અહીં નીચે જોઈ શકો છો છે. અને તેથી તમે તે આ પૃષ્ઠની મુલાકાત લો ત્યારે આ hello.html નમૂનો રેન્ડર કરશે, અને પછી આ HTML પાનામાં ભરો. તેથી આપણે માત્ર આ વાસ્તવિક ચલાવો ઝડપી, અને તે જેવી લાગે છે તે જોવા માટે, અને પછી હું પસાર કરશો વધુ વિગતવાર થોડુંક. તેથી, તમારા નમૂનાઓ જતા હોય છે એક નમૂનાઓ ફોલ્ડર માં જાઓ. તે આપમેળે અંદર જોવા મળશે નમૂનાઓ કે ઢાંચો માટે ફોલ્ડર. તેથી આપણે આ ખોલો દો. તેથી, હું Templating ઉદાહરણ ચલાવવા પડશે. તેથી હું હેલો / / એઝરા પર જાઓ, તો તે આ ભયાનક છે, હું મૂકી કે ખરાબ માર્કી ટેગ. ખૂબ જ સરસ, ખૂબ ગતિશીલ. હું એક મોટી ચાહક છું. પરંતુ શું થાય છે જો હું માત્ર હેલો / પર જાઓ? તેથી તે માત્ર હેલ્લો વિશ્વ કહે. હું તે નામ પસાર ન હતી, અને તે આપમેળે ભરી. તેથી તે હતી કે કેવી રીતે માતાનો જોવા દો, અને કેવી રીતે અમે કદાચ કે માર્કી છુટકારો મેળવી શકો છો. તેથી અહીં, આ પ્રકારની છે એક રસપ્રદ ઉદાહરણ તરીકે, તમે કેવી રીતે સ્વીચ સાથે પરિચિત હોય છે, તો નિવેદનો ભાષામાં કામ કરે છે. આ જેવા પ્રકારની છે કહે છે દ્વારા પતન કે આનાથી સૉર્ટ કરો, જ્યાં તમે વાસ્તવમાં બે જોડાયેલ એ જ કાર્ય માટે વિવિધ માર્ગો. તેથી અમે હેલો / માર્ગ સાથે જોડે છે અને હેલો કરવા માટે / હેલો / નામ માર્ગ, python તમે કરી શકો છો using-- અને અમે સ્પષ્ટ મૂળભૂત કાર્ય arguments-- સ્પષ્ટ જેથી કોઈ નામ છે, તેથી જો ત્યાં અમે પર જાઓ હોય તો માત્ર / હેલો, તે આપોઆપ ફિલ્ટર કરશે નામ કંઈ સમાન છે. તેથી, અમે રેન્ડર નામ = નામ સાથે ઢાંચો, તેથી તે નામ પરિમાણમાં પસાર કરશે આ નામ કાર્ય પરિમાણ માટે સમાન, નમૂના માં. કેવી રીતે તે હજુ પણ સમજાવતું નથી હેલો વર્લ્ડ પ્રિન્ટ નક્કી કરો કે શું, કે મારા નામ છાપો. તેથી ચાલો વાસ્તવમાં જુઓ આ નમૂનો પોતે માં, અને તે આવતા થયેલ છે જુઓ. તેથી, આ નમૂનો અંદર, અમે વાસ્તવમાં કેટલાક શરતી તર્ક હોય છે, જે અમુક લોકો કરશે એવી દલીલ કરે છે, તમે ખરેખર શરતી ઘણો ન જોઈએ તમારા નમૂનો પોતે અંદર તર્ક. તે અંદર વધુ પ્રયત્ન કરીશું કંટ્રોલર, પરંતુ આ ઉદાહરણ માટે તે ખૂબ નાના કંઈક છે. નામ તેથી જો અહીં, અમે આમ, તપાસ, જો નામ કંઈ બરાબર નથી, નામ ખરેખર છે, તો , તો પછી અમે કરશે પસાર સાથે નામ, હેલો કહો હેડર અને માર્કી, આ બધા સામાન્ય એચટીએમએલ, અન્યથા, અમે હેલો છાપે, વિશ્વમાં માત્ર સામાન્ય રીતે. તેથી એક દંપતિ વસ્તુઓ અહીં નોટિસ તમે templating ફોર્મેટ કેવી રીતે વિશે આમાંથી, કે જે બધા છે શરતી નિવેદનો, સૉર્ટ જેવા અમે તેને ત્યારે php કેવી રીતે તમે કેટલાક PHP દાખલ કરવા માંગો છો, તમે ઓછા વાપરવા પ્રશ્ન માર્ક, તે અહીં પ્રકારના સમાન છે આ {% છે. તેથી અહીં, અમે અમારી શરતી કોડ છે. અને પછી, તમે ખરેખર કરવા માંગો ત્યારે શાબ્દિક કંઈક મૂલ્યાંકન, અને પ્રિન્ટ સ્ક્રીન પર બહાર, તમે ડબલ કૌંસ વાપરો. તેથી અહીં ડબલ કૌંસ છે, અને પછી અમે નામ સ્પષ્ટ કરે છે, કે અંદર તેથી, તે મૂલ્યાંકન કરશે ચલ નામ, જે માંથી માં પસાર કરવામાં આવ્યો , નમૂનો કાર્ય રેન્ડર તેના બદલે માત્ર પ્રિન્ટીંગ કરતાં બહાર, અમે આ છુટકારો મેળવ્યો, તો તે માત્ર શબ્દ છાપે કરશે "નામ." તેથી, તે માટે જુઓ કંઈક છે. તેથી અન્ય વસ્તુ નોટિસ છે ત્યારે અમે તે ઉપયોગ કરવા માંગો છો render_template કાર્ય, અમે ખરેખર આયાત કરવા માટે હોય છે તે સ્પષ્ટ બાટલી છે. અને આ એક ઉદાહરણ છે બાટલી ના મોડ્યુલારીટી, તમે આયાત કરવા નથી કે તમે જરૂર નથી કે વસ્તુઓ. તમે માત્ર લાવી શકે છે કાર્યો ખરેખર તમે ક્યારેક, કે જે જરૂર નથી સરસ, જેથી તમે નથી આ બધા કાર્યો હોય છે તમે ઉપયોગ કરી રહ્યાં છો કે આસપાસ બેઠક, પણ તમે તે ભૂલી જો render_template આયાત કરવા માટે જરૂર છે, તમે કદાચ એક ચેતવણી મળશે કે જે તમને વિશે જણાવીશું. તેથી, તે templating છે. તેથી, અમે કેવી રીતે બતાવ્યા પ્રમાણે કર્યું સરળ વેબ પાનાંઓ બનાવવા અને થોડો વધુ તર્કશાસ્ત્ર ઉમેરો તે ચલ રાઉટીંગ દ્રષ્ટિએ. તે તમારા પર આધારિત અલગ અલગ વસ્તુઓ કરી શકો છો શું પછી તમે પણ જાઓ, અને URL આપે છે માં HTML થોડો વધુ અર્થમાં તમે વસ્તુઓ રેન્ડર કરવા માંગો છો કેવી રીતે દ્રષ્ટિએ. તમે બધા મૂકી નથી તમારા Python માં તમારા HTML, પરંતુ ખૂબ ખૂબ માટે દરેક વેબ એપ્લિકેશન, તમે અમુક પ્રકારના માંગો છો જઈ રહ્યાં છો માહિતી મોડેલ તેની સાથે સંકળાયેલ હોય છે. અને તેથી પરંપરાગત રીતે, આ કરશે એક એસક્યુએલ ડેટાબેઝ કંઈક છે. અને તમે માત્ર સંપર્ક કરી શકો છો સીધા SQL સાથે. પાયથોન છે હું તે કહે છે એવું લાગે છે. SQLite 3. તમે માત્ર SQLite 3 આયાત કરી શકો છો અને સીધા SQL પ્રશ્નો ચલાવો પરંતુ હું તમને વિશે ખબર નથી, પરંતુ હું ખરેખર માત્ર ગમતું નથી એસક્યુએલ ક્વેરીઝ લખવાથી. તે ખરેખર વિચાર કરે છે લાંબી અને જટિલ. અને તેથી, કંઈક કે હું ઉપયોગ કરવા જેવું છે શું એક છે, જે એક ORM, તરીકે પણ ઓળખાય છે પદાર્થ સંબંધ મેપિંગ. અને એક બિંદુ પદાર્થ સંબંધ મેપિંગ, બે અલગ અલગ હોય છે રીતે તમે ડેટાબેઝ વિશે વિચાર કરી શકો છો. ઉદાહરણ કે જેથી પ્રોફેસર માલણ સામાન્ય વર્ગ વાપરે છે, આ એક્સેલ ટેબલ, જ્યાં છે તમે આ પંક્તિઓ અને આ કૉલમ છે, અને તે માટે ખરેખર ઉપયોગી છે તે એસક્યુએલ રજૂ થાય છે કેવી રીતે અને તમે તેની સાથે કેવી રીતે સંચાર, પરંતુ તે ખરેખર છે કે બીજી રીતે ક્યારેક તે વિશે વિચારો ઉપયોગી વર્ગો અને ઓબ્જેક્ટો શરતો છે. તેથી તેના બદલે વિચાર દરેક ટેબલ હોવા તરીકે ચોક્કસ છે કે આ પંક્તિ માહિતી, તમે ખરેખર કરી શકો છો તરીકે તેને લાગે દરેક કોષ્ટક એક વર્ગ છે, ના અને પછી દરેક ઉદાહરણ વર્ગ ચોક્કસ ગુણધર્મો ધરાવે છે. તેથી, આ ઉદાહરણ માં, ઉદાહરણો વર્ગ કોષ્ટકમાં પંક્તિઓ છે, અને પછી દરેક મિલકત કરશે કોષ્ટકમાં એક સ્તંભ છે. તેથી, હું ગમે છે કે ORM peewee કહેવામાં આવે છે ઉપયોગ કરે છે. તે પ્રકારના બાટલી જેવા ખરેખર નાની છે. હું તેઓ સાથે મળીને જાઓ લાગે છે કે, પરંતુ અન્ય ORMs ઘણો છે તમે ઉપયોગ કરી શકો છો. વધુ લોકપ્રિય છે SQLAlchemy તરીકે ઓળખાય છે, અને હું શા માટે હું મૂળ યાદ રાખી શકો નહિં , SQLAlchemy પર peewee પસંદ કે હું તમને શા માટે હું કહી કરશે તે શ્રેષ્ઠ એક છે લાગે છે, પરંતુ અમે ફક્ત આ ઉપયોગ જઈ રહ્યાં છો એક હું તેનો ઉપયોગ કેવી રીતે ખબર છે કારણ કે. તેથી, એક પ્રશ્ન છે, શા માટે છે તમે એક ORM મદદથી સંતાપ જોઈએ, તેના બદલે માત્ર સીધા ના એસક્યુએલ ક્વેરીઝ લખી? અને હું શ્રેષ્ઠ કેસ લાગે છે, તમે ખરેખર નથી એસક્યુએલ ક્વેરીઝ લખવા માટે હોય છે. હું તમને બતાવીશું તરીકે, ખૂબ સરળ છે પસંદગી જેવી વસ્તુઓ કરી, નિવેશ, કાઢી નાંખવાનું, ખાસ કરીને કોષ્ટકો બનાવવા. તે ખૂબ સરળ છે એક વર્ગ માળખું લખી તે માળખું કરતાં બનાવો કોષ્ટક નિવેદન, પરંતુ એક વસ્તુ , ચેતો છે આ ORM તેના શ્રેષ્ઠ પ્રયાસ કરશે બહાર આકૃતિ શું સૌથી કાર્યક્ષમ એસક્યુએલ ક્વેરી હશે પરંતુ ક્યારેક તે ખોટું નહીં. અને તમે છો, ખાસ કરીને જો એક મોટી ડેટાબેઝ સાથે કામ કરે છે, તમે ક્વેરી નોંધ્યું છે કે કરી શકો છો કે, ઝડપી ચાલતું હોવું જોઈએ ખરેખર સમય લે છે. અને તમે કેવી રીતે હૂડ હેઠળ જુઓ તો આ ORM, એસક્યુએલ માં કે ઈન્ટરપ્રીટ છે તે કંઈક કરવાથી થઈ શકે છે ખરેખર હાસ્યાસ્પદ છે, માત્ર પ્રકારના કારણ કે તે તમારા ઇરાદા ખોટું gestured. અને, સમય ત્યાં કરવામાં આવી છે હું તેને ફરીથી લખી હતી, અને માત્ર કર્યું માત્ર મારા પોતાના એસક્યુએલ ક્વેરીઝ ચલાવો તે એક વિચિત્ર રીતે પદચ્છેદન હતી. તેથી, ત્યાં કેટલાક માત્ર માર્ગ માં, ઓવરહેડ તે કમ્પાઇલ કે જે તમારા એસક્યુએલ ફેરવાઇ નિવેદનો. તેથી, ચાલો ઝડપથી સુપર જોવા દો એક ડેટા મોડેલ એક સરળ ઉદાહરણ તમે ઉપયોગ કરી શકે છે છે. તેથી, આ જેથી Python કોડ છે, અને તમે કરવા માંગો છો પ્રથમ વસ્તુ છે peewee આયાત *. તેથી, બાટલી, વિપરીત તમે હોય છે આ બધા વ્યક્તિગત મોડ્યુલો, અને તમે બાટલી આયાત કરવા માંગો છો, અને એક નમૂનો, અને કેટલાક અન્ય લોકો લખવા અમે પાછળથી જોશો કે, peewee થી, તમે હમણાં બધું આયાત કરી શકો છો કારણ કે તે એક સુંદર નાની લાઇબ્રેરી છે. તેથી, તમે શું કરવા માંગો છો પ્રથમ વસ્તુ છે, ખરેખર આ ડેટાબેઝ ઓબ્જેક્ટ બનાવો. તેથી, જો તમે હોય ડીબી = SqliteDatabase, અને પછી તમારા ડેટાબેઝ નામ. અને આ ખરેખર કરશે ડેટાબેઝ પદાર્થ બનાવવા તમે peewee સાથે સંપર્ક કરી શકો છો. અને પછી, અમે વાસ્તવિક છે અમે બનાવવા માંગો છો કે મોડેલ. જેથી ટેબલ અમે બનાવવા માંગો છો. તેથી, peewee અંદર દરેક વર્ગ છે તમારા ડેટાબેઝ અંદર તેના પોતાના ટેબલ. તેથી, વર્ગો તમામ બેઝ મોડેલ માંથી બોલાવે, અને મૂડી એમ મોડેલ છે peewee વ્યાખ્યાયિત છે કે જે કંઈક. તેથી, તમારા મોડલ તમામ જોઈએ તેમના સૌથી વધુ સુપરક્લાસ તરીકે બોલાવે, તેઓ પાસેથી જોઈએ બોલાવે મોડેલ છે, પરંતુ ખરેખર ઠંડી છે શું તમે ખરેખર તમારા હોઈ શકે છે મોડેલ દરેક અન્ય બોલાવે છે. અને સમય ઘણો, તમારા માહિતી મોડેલો જરૂરી નથી એક સરસ વારસો વંશવેલો કરે છે, પરંતુ તેઓ જ્યાં વખત, તે ખરેખર સરસ છે તમે મોડેલ છે, કારણ કે દરેક અન્ય સહજ. તેથી, અમે આ વર્ગ વ્યાખ્યાયિત એક મોડેલ બોલાવે જે 'વિદ્યાર્થી' અને તે ત્રણ ગુણધર્મો ધરાવે છે. તે છે, કે જે એક ID છે એક PrimaryKeyField, જે પૂરી પાડવામાં આવેલ છે કે જે કંઈક છે peewee દ્વારા, નામ એક CharField છે, અને એક ગ્રેડ એક IntegerField છે. તેથી આ કે ન હોઈ શકે કેવી રીતે CS50 ખરેખર બધા સંગ્રહ 'વિદ્યાર્થીઓ ગ્રેડ. તે નથી, પરંતુ આ હું તે કરી શકે છે કેવી રીતે છે. અને પછી તે અંદર છે, આ વર્ગ છે, અને આ તમે સાથે કરી શકો છો કંઈક છે Python, તમે પુનરાવર્તિત વર્ગો હોઈ શકે છે. અને આ કંઈક છે કે peewee દ્વારા જરૂરી છે. તેથી, આ વર્ગ મેટા, તમારી પાસે ડેટાબેઝ છે કે સ્પષ્ટ કરવા માટે પદાર્થ સમાન અમે ઉપર બનાવવામાં છે. અને આ ફાઈલની આ ટેબલ શું છે કહે છે ખરેખર માં સમાયેલ હશે. તેથી આ કે તમારી પાસે કંઈક છે તમારા મોડલ બધા અંદર કરવું. તમે માત્ર સ્પષ્ટ કરવા માટે છે આ મેટા વર્ગ અંદર તે ડેટાબેઝ ડીબી સમાન છે. હું હોય તો હું સામાન્ય રીતે શું વિવિધ મોડેલો એક ટોળું, હું એક આધાર હોય છે મોડેલ, હું સામાન્ય રીતે ફક્ત "બેઝ મોડેલ" કૉલ કે મેટા વર્ગ છે, અને તે ડીબી સમાન ડેટાબેઝ સુયોજિત કરે છે. અને મારા અનુગામી મોડેલો પછી બધા તે આધાર વર્ગ વારસો પામશે. અને પછી હું ચિંતા કરવાની જરૂર નથી મેટા વર્ગ સુયોજિત વિશે. તેથી, આ ખરેખર નહીં ત્યારે એક એસક્યુએલ નિવેદન ફેરવાઇ સંકલિત તે નીચે આ બીભત્સ વસ્તુ જેવી લાગે છે અહીં, "ટેબલ વિદ્યાર્થી ID પૂર્ણાંક બનાવો " ગમે તે. અને, હું તે ટૂંકા લાગે છે કે, અહીં આ એસક્યુએલ ક્વેરી, પરંતુ તમે અહીં આ વર્ગ જોવા હોય તો તમે પર રહ્યું છે બરાબર શું જોઈ શકો છો. તમે ક્ષેત્રો કેવા પ્રકારના જોઈ શકો છો તેઓ કહે છે શું કરી રહ્યાં છો, ત્યાં છે, અને તેથી, મને લાગે છે કે આ પાયથોન કોડ પર જોઈ કરતાં ઘણો વધુ વાંચનીય છે આ એસક્યુએલ ક્વેરી લખવા પ્રયાસ કરે છે. તેથી, માટે ક્રમમાં ખરેખર ડેટાબેઝ વાપરવા માટે, અમે પાયથોન અંદર તેની સાથે જોડાઈ હોય છે. તેથી, હું સામાન્ય રીતે કહેવાય કાર્ય લખવા બે વસ્તુઓ કરે છે initialize_db. તે ડેટાબેઝમાં લે પદાર્થ ડીબી અને તે માત્ર ખોલે છે જે, તે જોડાય છે ડેટાબેઝ વિભાગ છે. તમે માત્ર છતાં ચાલી રહ્યાં છો, તો તમારા સ્થાનિક મશીન પર વેબસાઇટ, તે ચિંતા કરવાની એક સુપર મોટો સોદો નથી જોડાઈ અને જોડાણ વિશે, પરંતુ તમે ચલાવી રહ્યા હોય તો એક વેબસાઇટ પર તે તમને ખાતરી કરો કે જ્યારે વપરાશકર્તા, કે બનાવવા માંગો છો તેઓ બહાર બંધ હોય ત્યારે, તે સાથે જોડાય આ વેબસાઇટ, તેઓ છે કે જેથી ડિસ્કનેક્ટ તમે જોડાયેલ લોકો એક ટોળું નથી તમારા ડેટાબેઝ માટે બધા એક જ સમયે. અને પછી, જ્યારે તમે ડેટાબેઝ સાથે જોડાવા માટે, તમે db.create_tables કૉલ કરવા માંગો છો અને તમે શું કરવા માંગો છો મોડેલો યાદી કોષ્ટકો બનાવવા માટે. તેથી અહીં, હું હમણાં જ કરવા માંગો છો આ વિદ્યાર્થી માટે તે બનાવો. અને પછી, શું મહત્વનું છે માટે છે સલામત = સાચું મોટા ભાગના વખતે સ્પષ્ટ કરો. તેથી શું આ નિવેદન શું કરશે, તે છે આ માટે કોષ્ટકો બનાવે છે વિદ્યાર્થી મોડેલ છે, પરંતુ માત્ર તે ટેબલ નથી, તો પહેલાથી જ બનાવવામાં આવી છે. કે શું સુરક્ષિત તે સ્પષ્ટ કરે છે. તેથી તે પર ફરીથી લખી નહીં તમારી હાલની ટેબલ, તે માત્ર એક નવી બનાવશે ટેબલ નથી એક હોય તો. તેથી, તમે માત્ર બનાવી શકે છે કોષ્ટકો એક વખત એસક્યુએલ મદદથી. અને પછી તે ડેટાબેઝ બેસવું છે ત્યાં છે, અને પછી દરેક વખતે સાથે જોડાવા માટે, પરંતુ તે માત્ર સામાન્ય રીતે સારું છે આ create_tables કોલ મૂકી, તેથી, તે તમે ક્યારેય કાઢી તો તમારા ડેટાબેઝ જ્યારે તમે તમારા વેબ ચલાવવા એપ્લિકેશન ફરી, તે ફરીથી કરશે. તેથી, માત્ર સલામત છે તેની ખાતરી કરવા વાત સાચી છે સ્પષ્ટ કરેલ છે, અથવા તમે માત્ર તમારી માહિતી મળશે દર વખતે clobbered રહ્યું. અને પછી, તમે માત્ર કૉલ કરી શકો છો સ્થાપિત કરવા માટે initialize_db જોડાણ, અને બનાવવા કોષ્ટકો જો જરૂરી હોય તો. તેથી, સૌથી સામાન્ય વસ્તુ તમે કરવા માંગો છો કરશે, અથવા સૌથી સામાન્ય વસ્તુઓ એક, ખરેખર વસ્તુઓ કરવા માટે છે તમારા ડેટાબેઝ માં. અને તેથી, બદલે કર્યા માં એક insert લખવા માટે બધા સાથે નિવેદન કિંમતો સ્પષ્ટ, તમે ખરેખર કહી શકો છો વિદ્યાર્થી વર્ગ પર કાર્ય કરે છે. તેથી, જો તમે એક વર્ગ છે જ્યારે બનાવવા કે, મોડેલ માંથી બોલાવે તે આ પદ્ધતિ બનાવવા છે. તેથી, જો તમે વર્ગ name.create કરવું, અને તમે પરિમાણો સ્પષ્ટ તમે પસાર કરવા માંગો છો છે. તેથી, હું કેટલાક વિદ્યાર્થીઓ ઍડ કરવા માંગો છો, તો અમારા CS50 ગ્રેડ પુસ્તક ઉદાહરણ માટે, હું કોણ ધરાવે છે, ડેવિડ મૂકીશું ખૂબ જ સારી ગ્રેડ, તેમણે 95 છે. અને મારી જાતને, જે કરી નથી એટલી સારી રીતે CS50 માં, હું એક 50 છે. અને તેથી, સરસ વસ્તુ વિશે આ બનાવવા કાર્ય શું કરે છે, તે ઉદાહરણ આપે છે, અથવા તે છે પંક્તિ, તે કોષ્ટકમાં બનાવનાર કે, અને તેથી તે પછી તમે તે સ્ટોર ચલ, અને પછી તેની સાથે કામ કરે છે. તમે આસપાસ બદલી શકો છો, જે હું એક ઉદાહરણ બતાવવા પડશે. હું ન હતી કે નોટિસ ને સ્પષ્ટ કરવા માટે હોય છે, તે છે, કારણ કે કારણ કે PrimaryKeyField, તે આપમેળે ચાલશે તમે તેને ઉલ્લેખ નથી, તો તેને વધારતી. અને, હકીકતમાં, તો તમે કદાચ તે સ્પષ્ટ ન જોઈએ, જો તમે આકસ્મિક શકે છે કારણ કે કોઈના આઈડી clobber. અને તમે બનાવવા માંગો છો તે અનન્ય છે તેની ખાતરી કરો. તેથી, ખરેખર, સૌથી તમે કરવા માંગો છો સામાન્ય વસ્તુ છે, કદાચ બહાર પસંદ છે તમે એક વાર ડેટાબેઝ ત્યાં ઘણી માહિતી છે. અને તેથી, તમે બધું વિચાર કરવા માંગો છો, તો જેથી પસંદ કરો તારો સમકક્ષ વિદ્યાર્થીઓ નિવેદન, તે માત્ર student.select હશે. અને તે એક એરે તમે પાછા આપશે વિદ્યાર્થી તમામ તે વસ્તુઓ સાથે તમે ઉપર ફરી વળવું કે તમે કરવા માંગો છો. તમે તેને બહાર વસ્તુઓ મેળવી શકો છો. અને મોટા ભાગના વખતે, તમે માત્ર પસંદ કરવા માંગો છો નથી, તમે ખરેખર કંઈક સ્પષ્ટ કરવા માંગો છો. અને તેથી, તમે સાંકળ કરી શકો છો સાથે મળીને આ કાર્ય કોલ્સ, તમે કેવી રીતે સાંકળ જેમ એસક્યુએલ એકસાથે નિવેદનો. તેથી જો તમે) (student.select કરી શકો છો. જ્યાં આ ઉદાહરણમાં. અને પછી, તમે કરી શકો છો , શરતો સ્પષ્ટ માત્ર સામાન્ય પાયથોન ઉપયોગ બુલિયનો વસ્તુઓ તપાસો. તેથી, આ કિસ્સામાં, તમે કરવા માંગો છો તમને પસંદ કરી રહ્યાં છે તે મર્યાદિત student.grade 50 બરાબર છે, અને student.name, એઝરા સમાન છે તેથી તે ફક્ત તેને બહાર મને મળશે. અને ખરેખર, એક નોટિસ સૂક્ષ્મ વસ્તુ અહીં છે તમે સ્પષ્ટ કરવા માંગો છો, તો તે એક અને / અથવા એક અથવા / અથવા, Python માં, તમે સામાન્ય રીતે ઉપયોગ કરશે, હું શબ્દ "અને" ખરેખર લાગે પરંતુ અહીં તમે એક ચિન્હ વાપરવા માટે, જે સામાન્ય રીતે એક bitwise ઓપરેટર છે, પરંતુ આ ખાસ કિસ્સામાં, માત્ર માર્ગ peewee તે કરે છે, તમે એક ઉપયોગ નું ચિહ્ન સ્પષ્ટ "અને છે." કે કંઈક છે કે હું ઘણો મિશ્ર કરો, પરંતુ તે ન કરવામાં આવે તો વ્યવહારમાં કે ખૂબ. અને પછી, એક વાર તમે બધી ડેટાબેઝ બહાર વિદ્યાર્થીઓ, તમે પૂર્ણ કરી છે એકવાર તમે પસંદ કરો છો અને તમારા વસ્ત્રો અથવા ગમે, તમે foreach લૂપ ઉપયોગ કરી શકો છો માત્ર Python માં સામાન્ય જેમ iterator કોઇ પણ પ્રકારની સાથે અથવા એરે કોઇ પણ પ્રકારની છે. તેથી જો તમે ઓ માટે કરી શકો છો student.select માં (). જ્યાં તે માંગે (Student.grade <75), અને તેથી આ ફરી કોષ્ટકમાં દરેક વિદ્યાર્થી પર ફરી વળવું જેની ગ્રેડ કરતાં ઓછી 75 છે, જે આ કિસ્સામાં, હજુ હમણાં જ મને છે. અને પછી તમે અંદર કંઈક કરી શકે કે લૂપ, જેમ મને એક ઇમેઇલ મોકલો અને મને ખરેખર કહી મારી સમસ્યા સેટમાં કરો. તેથી, અન્ય વસ્તુ તમે કરી શકો છો આમ કરવા માટે, તે ખરેખર સરળ છે છે ટેબલ અંદર પંક્તિઓ અપડેટ કરવા માટે. તેથી, અહીં પાછા યાદ રાખો, તમારા હું દાખલ ત્યારે, હું હતો કે કિંમત લીધો student.create દ્વારા પરત, અને હું એઝરા કહેવાય નામ માટે આઈડી. અને તેથી હવે, તમે બદલી શકો છો કે હમણાં અંદર કિંમતો જેમ તમે એક Python માં સામાન્ય વર્ગ. તેથી જો તમે સુયોજિત કરી શકો છો ezra.grade = 95 અને કે સ્થાનિક નકલ અપડેટ કરશે, પરંતુ જો તમે ખરેખર કરવા માંગો છો જો ડેટાબેઝ કે પરિવર્તન મોકલવું, તમે ezra.save કૉલ કરવા માટે હોય છે જેથી તમે સેવ પદ્ધતિ કહેવાય આ નમૂના પર. અને તેથી હવે, હું સફળતાપૂર્વક બદલાઈ ગયેલ છે ડેટાબેઝ અંદર મારા પોતાના ગ્રેડ. તેથી, પછી હું કેચ કહે છે કે દો ડેટાબેઝ અંદર મારા ગ્રેડ બદલાતી રહે છે. પ્રોફેસર માલણ કદાચ રહ્યું છે વર્ગ માંથી મને કાઢી નાખવા માંગો છો કરવા માટે, અને તેથી તમે કાઢી નાખો કૉલ કરી શકો છો કે જે હમણાં જ વસ્તુ પર ઉદાહરણ પદ્ધતિ. જો તમે ઇચ્છતા તેથી, જવા માટે પાછા આ લૂપ અહીં, અને ખરેખર, તેના બદલે ઇમેઇલ્સ તમામ મોકલવાની વિદ્યાર્થીઓ જેની ગ્રેડ ઓછી છે 75 કરતાં, તમે તેમને કાઢી કરવા માગતા હતા, આ લૂપ અંદર તમે કરી શકે s.delete ઉદાહરણ કૉલ કરો. અને તમે શું કરવા માંગો છો ખૂબ જ છેલ્લા વસ્તુ, તમે જોડાણ અધિષ્ઠાપિત જ્યારે છે, અને તમે તમારા કામ સાથે પૂર્ણ કરી રહ્યાં છો તમે db.close કૉલ કરવા માંગો છો જ્યાં ડીબી કે ડેટાબેઝ છે અમે પહેલાં હતી કે પદાર્થ. અને તમે ખાતરી કરો કે કરવા માંગો છો બધું બહાર બંધ નહીં. કૂલ. તેથી હવે, હું એક ઉદાહરણ એપ્લિકેશન ધરાવે છે. હું પ્રકારના માત્ર બધું પૂર્વ કર્યા કે જેથી કોઇ પણ જીવંત કોડિંગ ત્યાં હશે નહિં ભૂલો છે, પરંતુ અમે લઈ જવામાં કરી શકો છો તે અને તમે બાટલી મૂકવામાં આવશે જુઓ કે કેવી રીતે અને સાથે મળીને peewee, અને એક સરળ એપ્લિકેશન બનાવે છે. હું CS50 મોટા મોટા શબ્દો વાપરવા તે કહી, અને તે છે એક સરળ બ્લોગ પ્લેટફોર્મ જેવું. તેથી, પ્રથમ, હું તેને ચલાવવા પડશે અને તે જેવી લાગે છે તે બતાવવા અને પછી અમે કોડમાં વધુ દેખાય છે. ઠીક છે, તેથી આપણે માત્ર આ ચલાવો. હું આ ઠંડી બનાવવા પડશે થોડી થોડી નાની. તે માત્ર છે, કારણ કે ખૂબ જ સુંદર છે હું CSS ઘણો કરી નથી પરંતુ તે શું કરે છે તે છે, છે બ્લોગ પોસ્ટ્સ આ ડેટાબેઝ, અને તે તમામ મારફતે જાય છે તેમને, અને તે તેમને પ્રદર્શિત કરશે સૌથી વધુ તાજેતરના ક્રમમાં પાનાં પર. અને તેથી આ માત્ર કેટલાક પોસ્ટ્સ છે હું ડેટાબેઝમાં સાચવવામાં હતા. અમે નવા બનાવવા માંગો છો, તો પોસ્ટ, અમે એક નવી પોસ્ટ ઉમેરો પર જઈ શકો છો અને અમે શીર્ષક દાખલ કરી શકો છો પોસ્ટ, જેથી કંઈક, CS50 પરિસંવાદ. વાહ, ખરેખર આ પરિસંવાદ માણી. કૂલ. પછી તમે પોસ્ટ દબાવો, અને તે કરશે હોમ પેજ પર તમે પાછા પુનઃદિશામાન થયેલ છે, અને પછી તમે જોશો કે તાજેતરની પોસ્ટ ઉમેરાઈ હતી. અને અમે હજુ પણ ત્યાં તમામ મુદ્દાઓ છે. તેથી હવે, ચાલો બધા મારફતે પગલું દો કોડ અને આ અમલમાં મૂકાયેલ છે કેવી રીતે જુઓ. તેથી, હું દો કે પ્રથમ વસ્તુ લાગે છે વાસ્તવમાં મોડલ છે પર એક નજર. આ સમય ઘણો, જ્યારે તમે કંઈક ડિઝાઇન કરી રહ્યાં છીએ, તમે કેવી રીતે વિશે પ્રથમ વિચાર કરવા માંગો છો તમે તમારા માહિતી રજૂ કરવા માટે જઈ રહ્યાં છો અને પછી તે આસપાસ વસ્તુઓ ડિઝાઇન, જેથી બધું અર્થમાં બનાવે છે. અને તે હું કેવી રીતે ખરેખર છે હું આ કરી હતી, તે હતી હું નીચે બેઠા અને વિચાર્યું હું એક પોસ્ટ માં શું કરવા માંગો છો નથી. તેથી, અહીં, અમે એ જ માળખું ધરાવે છે હું અગાઉ ઉલ્લેખ કરવામાં આવ્યો હતો કે, અમે ડીબી = Sqldatabase ('posts.db') કરવું છે. વાસ્તવમાં, તમે કદાચ નથી માંગતા તમારું નામ ડેટાબેઝ હાર્ડ કોડ. તે કદાચ એક પરિમાણ પ્રયત્ન કરીશું કે કદાચ ક્યાંક સંગ્રહિત છે રૂપરેખાંકન ફાઈલમાં, પરંતુ આ જેમ એક નાના ઉદાહરણ તરીકે, તે હાર્ડ કોડ ઠીક છે. તેથી હવે, આપણે આ જગ્યા વર્ગ હોય છે, જે આધાર મોડલ બોલાવે છે. અને તે ફરીથી છે, ID = PrimaryKeyField. ખરેખર, તમે સ્પષ્ટ ન હોય તો, હું ખરેખર આ છુટકારો મેળવ્યો, તો પછી અમે કાળજી લેશે peewee આપોઆપ કે ID ને ક્ષેત્ર બનાવવા માટે, અને તે આપોઆપ કરશે તે PrimaryKey, બનાવવા જે હું કારણ કે સામાન્ય રીતે, ખરેખર સરસ લાગે છે કે, તમે કરવા માંગો છો કંઈક છે પરંતુ હું ખાસ તે મૂકવા માંગો, માત્ર જેથી હું તે ત્યાં છે કે યાદ કરે છે. પરંતુ તમે તે સ્પષ્ટ ન હોય તો, આપોઆપ થશે. તેથી, હું એક તારીખ હોય છે, જે એક DateTimeField છે, અને બધા આ વિવિધ ક્ષેત્રો, જો તમે આ peewee દસ્તાવેજીકરણ જુઓ, તે તમને વિવિધ યાદી આપી શકશો તમે ઉપયોગ કરી શકો છો કે ક્ષેત્રો પ્રકારો. સૌથી મોટા ભાગ માટે, તે સરખું છે તમે SQL જુઓ તો શું છે. તેથી CharField એક છે, VarCharFields, textfields, ખૂબ લાંબા સમય માટે જે છે એક બ્લોગ પોસ્ટ જેવા ગ્રંથો, સંભવિત DateTimeFields, DoubleFields, FloatFields, કે જેમ તમામ બાબતો. અને તમે અન્ય દલીલો પાસ કરી શકો છો તે માટે, હું અહીં સ્પષ્ટ કરેલ નથી છે. કહો, ઉદાહરણ માટે, તમે કરવા માંગો છો ન હતી બે પોસ્ટ્સ એ જ શીર્ષક હોય પરવાનગી આપે છે, તમે સ્પષ્ટ કરી શકે છે સાચું અનન્ય કંઈક = અને તે માત્ર એક વધારાનું પરિમાણ છે તે નીચે કમ્પાઇલ ત્યારે તે ક્ષેત્ર એસક્યુએલ માં, તે સ્પષ્ટ થશે તે છે કે જે અનન્ય હોય છે. તમે પણ કંઈક સ્પષ્ટ કરી શકો છો નલ અને અન્ય તમામ વસ્તુઓ તમે સામાન્ય રીતે એસક્યુએલ નથી. તેથી, આ એક ખૂબ સરળ છે તારીખ છે કે મોડેલ. આ DateTimeField અંદર, અહીં નોટિસ, હું મૂળભૂત શું સ્પષ્ટ કરેલ છે. હું તે સ્પષ્ટ , datetime.datetime.now કારણ કે જે રીતે તે આ મૂલ્યાંકન નહીં, તે ખરેખર મૂલ્યાંકન આ datetime.now જ્યારે તે ડેટાબેઝ દાખલ નહીં. હું હોય તો લાગે છે કે આ ડબલ ચેક માટે, પરંતુ પછી તમે આ કંઈક ન હોય તો તે ખરેખર એક વખત મૂલ્યાંકન કરશે અને પછી તારીખ સમય હંમેશા એ જ રહેશે. તેથી, જો તમે કંઈક કરી રહ્યા છીએ માત્ર જો datetimes સાથે ડબલ ચેક તે જ્યારે મૂલ્યાંકન છે કે ખરેખર બીજું દાખલ કરો, અથવા નહીં તમે ગેરસમજ થઈ શકે છે. આ શીર્ષક માત્ર એક છે CharField, ત્યાં જે તમે પસાર કરી શકે છે વધુ દલીલો છે સ્પષ્ટ બરાબર લાંબા કેવી રીતે તમે તેને કરવા માંગો છો, પરંતુ અહીં, તે ખરેખર તો કોઈ વાંધો ન હતો. અને ટેક્સ્ટ હોવા રહ્યું છે સમગ્ર પોસ્ટ લખાણ અને તે એક જ હશે તમે કરવા માંગો છો, માત્ર કારણ કે textfield તે એક સુંદર લાંબા શબ્દમાળા કરવા માટે પરવાનગી આપવા. પછી અમે આ મેટા છે પેટાવર્ગ કે જે હમણાં જ અમે ડેટાબેઝ માંગો છો કે સ્પષ્ટ આ ખરેખર માં ખોલવામાં આવે છે જ્યાં અમે અહીં છે કે ડીબી પદાર્થ હોય છે. અને છેલ્લા વસ્તુ અમે છે અહીં, ફક્ત આ કાર્ય છે અમે જઈ રહ્યાં છો કે અમારી મુખ્ય એપ્લિકેશન ઉપયોગ જોડાવા માટે ડેટાબેઝ પ્રારંભ કરવા માટે તે છે, અને તે પછી પોસ્ટ ટેબલ બનાવવા માટે. હવે, ચાલો મુખ્ય એપ્લિકેશન પોતે જોવા દો. તેથી આ એક તદ્દન એક રાશિઓ કરતાં લાંબા સમય સુધી બીટ અમે પહેલાં જોઇ છે, પરંતુ આસ્થાપૂર્વક ખૂબ ખરાબ નથી. તેથી, મને આ બહાર વિસ્તારવા દો. બરાબર. તેથી, નોટિસ અને ટોચ હું આયાત અન્ય વસ્તુઓ સંપૂર્ણ સમૂહ બાટલી થી અમે હોય છે ખરેખર પહેલાં જોવામાં આવે છે. અને આસ્થાપૂર્વક, અમે મારફતે જઇ શકો છો આ એક પછી એક દરેક એક અને વિશે થોડું વધુ વાત તેમને ઉદાહરણ દ્વારા સોર્ટ થાય છે. તેથી, અમે બાટલી છે અને render_template, જે અમે પહેલા જોયેલા આ વિનંતી પદાર્થ, અમે કેવી રીતે જોવા જ્યારે આવશે, જે હું ખરેખર રહ્યું હતું કે ફોર્મ કામ કરે છે. તમે પુનઃદિશામાન કરી શકો છો, કે જે પુનઃદિશામાન પાછા Create New પોસ્ટ મૂળ હોમપેજ પર બેક, અને પછી તમે કરી શકો છો કે જે કંઈક છે URL ને, પર બહાર આકૃતિ જ્યાં વેબસાઇટ ચોક્કસ પાનું છે. તેથી, આગામી હું શું વાત છે, હું આયાત છે મોડેલો બધી માહિતી અમે હમણાં જ જોઈ હતી કે ફાઈલો. અને, હા. તેથી, નવા કંઈક બીજું આવે છે કે તમારી સાથે વ્યવહાર કરી રહ્યા છો ત્યારે, ખાસ કરીને ડેટાબેઝો, તમે સ્પષ્ટ કરી શકે છે પહેલાં કહેવાય નહીં એક કાર્ય છે કે નહીં કે દરેક વિનંતી છે, અને કાર્ય આ મદદથી દરેક વિનંતી પછી કહેવાય કાર્ય શોભનકળાનો નિષ્ણાત app.before વિનંતી. અને તેથી આ ચલાવવામાં આવશે ત્યાં આ કાર્ય છે. આ એટલા માટે થઈ નથી વિનંતી પહેલાં કહેવાય છે, પરંતુ સામાન્ય રીતે કે કંઈક છે તેને કૉલ કરવા યોગ્ય. તમે ગમે કાર્ય સ્પષ્ટ કરી શકો છો જો તમને ત્યાં કહેવાય મેળવવા માંગો છો તેથી હું આ initialize_db સ્પષ્ટ અમે મોડેલો પાછા હતું કે કાર્ય ફાઇલ, જેથી દરેક વિનંતી પહેલાં, તમે ડેટાબેઝ સાથે જોડાવા માંગો છો. બે અલગ અલગ હોય છે રીતે તમે આ કરી શકો છો. તમેapp કરી શકો છો., હું તે after_request છે માને છે. અને વચ્ચે તફાવત after_request અને teardown_request, after_request જ થશે છે વિનંતી ખરેખર માન્ય તો. અને તેથી, તો જ વિનંતી સફળ હતી, , કંઇ ખોટું થયું હોય તો પરંતુ teardown_request સફળ કિસ્સામાં થાય છે વિનંતી, અથવા એક ભૂલ કિસ્સામાં. તેથી, સામાન્ય રીતે, તમે કરવા માંગો છો teardown_request વાપરવા માટે, તમે કરવા માંગો છો જ્યાં સુધી ખાસ કરીને કંઇક અલગ, ભૂલ કિસ્સામાં. પરંતુ માત્ર ડેટાબેઝ બંધ કરવા માટે, તે સફળ થાય છે અથવા તે નિષ્ફળ જાય તો કે શું અમે તમને ડિસ્કનેક્ટ કરવા માંગો છો ડેટાબેઝ માંથી. તેથી તે db.close, કહેવાય છે આ ડીબી પદાર્થ પર. આ teardown_request નોંધ કરો કે એક અપવાદ માં લઈ જાય છે. ખરેખર ત્યાં તો ઘણા તમે ચકાસી શકો છો એક ભૂલ તે બંધ કરવામાં આવી હતી જ્યારે પરંતુ અહીં, આસ્થાપૂર્વક, ત્યાં ભૂલો સંપૂર્ણ ઘણો નથી, તેથી અમે ફક્ત પ્રકારની છે કે અવગણીને કરી રહ્યાં છો. ઠીક છે, અને તે બાકીના ખૂબ ખરાબ નથી. તેથી, અમે ઘર પાનાં પર જવા માટે છે, ત્યારે અમે આ home.html ઢાંચો પ્રસ્તુત કે ખોલશે. આ પાસ પોસ્ટ છે અને આ શું બરાબર , અમે આ પોસ્ટ છે યાદ છે કરે છે મોડેલ, તેથી અમે બધા પોસ્ટ્સ પસંદ અને પછી તમે શું કરી શકો છો અન્ય વસ્તુ, તમે જ્યાં કલમ સ્પષ્ટ કરી શકો છો તમે એક સ્પષ્ટ કરી શકો છો દ્વારા ઓર્ડર છે, અને તેથી અમે લેવા પોસ્ટ્સ કે જે બધી પછી પસંદ કરો, અને અમે તેમને ઓર્ડર post.date.descending. અને તે સ્પષ્ટ થશે, જ્યારે તેઓ ખરેખર બહાર આવે સૌથી વધુ તાજેતરના એક ખૂબ પ્રથમ હશે. અને પછી, અમે માં કે પાસ આ home.html નમૂનો, તેથી આપણે ખરેખર ખોલો દો ખરેખર ઝડપી છે કે ઢાંચો, અને તે કામ કરી રહ્યા છે કેવી રીતે પર એક નજર. અને આ મહાન HTML નથી પરંતુ આસ્થાપૂર્વક, અમે પાયથોન પર ધ્યાન કેન્દ્રિત કરી શકે છે. તેથી નવું ઉમેરો પર એક લિંક છે પોસ્ટ, અને તેથી આ માર્ગ સ્પષ્ટ બાટલી અંદર કે અમે અહીં છે, કે જે વ્યાખ્યાયિત કરે છે. આ નવી પોસ્ટ માર્ગ છે, અને અમે અહીં ઉપર સ્પષ્ટ કરો. અને તેથી તે પછી જાય છે કે કડી છે બાટલી સર્વર અંદર કે માર્ગ છે. વધુ રસપ્રદ વાત અહીં લૂપ માટે આ છે. તેથી અમે આ સ્પષ્ટ છે કે પોસ્ટ પરિમાણ જે આ માં પસાર કરવામાં આવ્યો હતો render_template કાર્ય, પોસ્ટ માં દરેક પોસ્ટ માટે માં પસાર નહીં કે પદાર્થ. અમે પ્રિન્ટ માંગો છો પોસ્ટ શીર્ષક, H1 માં, અને પછી નીચે, અમે પ્રિન્ટ માંગો છો એક ફકરો અંદર પોસ્ટ લખાણ. અને અહીં, અમે ખરેખર કરી શકો છો એ Python કાર્ય કૉલ, તેથી અમે strftime કૉલ કરી શકો છો સેન્ટ RF સમય, અને તમે ફોર્મેટ સ્ટ્રિંગ પાસ કરી શકો છો તમે બહાર ડેટા પ્રિન્ટ કરવા માંગો છો છે. તેથી તે તમે કરી શકો છો કે જે ખૂબ સરસ છે છે ખરેખર આ પાયથોન કાર્ય કૉલ અહીં અંદર. તમે પર સ્વરૂપણ શું છે નથી આ નિયંત્રક બાજુ, ખરેખર, કારણ કે આ તારીખ ફોર્મેટિંગ કંઈક છે કે તમે જુઓ અંદર કામ કરવા માંગો છો. અને આ ટકા બધા વસ્તુઓ સુપર મહત્વનું નથી. તમારી પાસે આ દસ્તાવેજ ઉપર જુઓ તો Python માં strftime કાર્ય માટે, તે આ બધા સ્પષ્ટ વસ્તુઓ, પરંતુ કે કેવી રીતે, ક્યારે અમે શોધી રહ્યા હતા અહીં ઘર પાનું, તે એક સરસ સાથે આ બંધારણો તારીખ, અને તે સ્પષ્ટ છું અથવા PM પર પોસ્ટેડ, પરંતુ સામાન્ય રીતે, અમે તો અહીં આ ન હતી, તમે કદાચ કેટલાક કચરો મળશે ખૂબ જ સારી જોવા ન હતી કે તારીખ. અને પછી અમે સ્પષ્ટ post.text, હું કરી શકે એક દંપતિ મૂકી છે વાક્ય માત્ર અહીં તોડે દરેક પોસ્ટ વચ્ચે અમુક જગ્યાઓ મૂકો. તેથી, હું સૌથી મહત્વપૂર્ણ છે આ ઉદાહરણમાં વસ્તુ, તમે લૂપ માટે આ ઉપયોગ કરી શકે છે. અને આ માટે સરખું હોય છે વસ્તુઓ તમે PHP માં કરી શકો છો. તમે મારફતે ફરી વળવું કરી શકો છો બધું પસાર નહીં અને તેથી, તેના બદલે કર્યા કરવા માટે નકલ / પેસ્ટ, નકલ /, બધા HTML પેસ્ટ તમે માત્ર પછી એક વખત તે લખવા માટે હોય છે, અને તમે પોસ્ટ્સ બધા પર ફરી વળવું કરી શકો છો. અને આ કંઈક છે તમે કરવા માંગો છો કે જે સામાન્ય તમે માહિતી ઘણો હોય છે, કરવા માટે, , કે જે તમારી માહિતી બધું માટે છે તમે એક જ વસ્તુ કરવા માંગો છો. અને પછી, ફક્ત યાદ રાખો કે જ્યારે તમે તે બાહ્ય કંઈક પ્રિન્ટ કરવા માંગો છો HTML માં, તમે ઉપયોગ અહીં ડબલ કૌંસ, પરંતુ તે પછી તમે સ્પષ્ટ કરવા માંગો છો જ્યારે એક શરત વિશે કેટલીક માહિતી અથવા લૂપ માટે, તમે ટકા કૌંસ વાપરો. તેથી, પાયથોન પર પાછા જવાનું કોડ છે, તેથી કે જે સમજાવે છે શું મુખ્ય ચાલી રહ્યું છે માર્ગ, આપણે ત્યાં જાય છે, તે માત્ર ડિસ્પ્લે તમામ પોસ્ટ્સ, પરંતુ પછી પ્રશ્ન , અમે કેવી રીતે વાસ્તવમાં મેળવી શકું છે ડેટાબેઝ માં પોસ્ટ્સ કે જે થોડી વધુ રસપ્રદ છે. તેથી, જ્યારે તમે નવા પર ક્લિક કરો અમે અહીં જે જોયું પોસ્ટ લિંક, તે આ ફોર્મ તમે પુનઃદિશામાન કરે છે. અને તે માત્ર એક સરળ કોલ છે render_template કાર્ય છે, કે જે પછી HTML ફોર્મ માં નવી પોસ્ટ પસાર કરે છે. તેથી આપણે તે પર એક નજર કરીએ. તેથી આ એક ખૂબ જ સરળ છે. તે એક સરળ HTML ફોર્મ છે, જે થોડો પરિચિત જોવા મળશે, CS50 ફાયનાન્સ માં સ્વરૂપો પર આધારિત છે. અને તેથી, અમે અહીં ક્રિયા સ્પષ્ટ કરો. અને અહીં તમે કામ કરી રહ્યાં છો PHP, સાથે, સામાન્ય રીતે, તે કંઈક હશે, create.PHP, પરંતુ અહીં અમે ખરેખર એક માર્ગ સ્પષ્ટ બાટલી સર્વર અંદર. અને તેથી, આ માર્ગ અનુલક્ષે બનાવો માર્ગ અમે અહીં છે કે જે અમે એક બીજા માં જઈશ. અને તેથી, અમે તે સ્પષ્ટ તે એક પોસ્ટ પદ્ધતિ છે અમે મોકલવા માંગો છો કારણ કે આ ફોર્મ માહિતી, અને સામાન્ય રીતે તમે ફોર્મ માંથી માહિતી મોકલી રહ્યાં છો, ત્યારે તમે પોસ્ટ વિનંતી ઉપયોગ કરવા માંગો છો શકે છે, તમે અંત નથી માત્ર જેથી આ મોટી, અતિભારે URL સાથે. પરંતુ તમે પણ એક વિચાર વિનંતી ઉપયોગ કરી શકે છે, અને, ચલ રાઉટીંગ સાથે તે પસાર પરંતુ સ્વરૂપો માટે, તે સારું છે અહીં એક પોસ્ટ વિનંતી છે. અને તેથી તે પછી, ફક્ત તમને ગમે HTML અને PHP, સાથે કરી શકે છે, તમે આ લખાણ ઇનપુટ્સ સ્પષ્ટ કરી શકો છો, અને તમે તેમને નામ સ્પષ્ટ કરી શકો છો, અને તે પસાર મળશે કે નામ છે બાટલી અંદર વિનંતી પદાર્થ માં. અને પછી અમે સબમિટ હોય છે બટન પોસ્ટ કહે છે. અને અહીં, પોસ્ટ નામ છે બટન, તે એક બ્લોગ પોસ્ટ છે, કારણ કે પરંતુ અહીં, પોસ્ટ વિનંતી પદ્ધતિ છે. તેથી તે જ શબ્દ છે પરંતુ વાસ્તવમાં બિનસંબંધિત. અરે વાહ પાયથોન કોડ પાછા જવું, અમે પદ્ધતિ બનાવવા કહેવાય, અહીં નોંધ્યું છે કે તમે કરી શકો છો ખરેખર માર્ગ અંદર સ્પષ્ટ વિનંતી પદ્ધતિઓ તમે સ્વીકારી કરવા માંગો છો કે, અને તેથી અહીં, હું કે હું સ્પષ્ટ માત્ર એક પોસ્ટ પદ્ધતિ સ્વીકારી કરવા માંગો છો. તેથી, હું ખરેખર પૃષ્ઠની મુલાકાત કરવાનો પ્રયાસ કરો તો સીધા વિચાર વિનંતી ઉપયોગ કરી રહ્યા છે, જે તે "પદ્ધતિ મંજૂરી નથી." મને કહેશે અને તેથી, તમે પ્રકારની જેવા પાનાંઓ છે હું માત્ર છું કે જે આ બનાવવા પાનું, ખરેખર એક માર્ગ તરીકે ઉપયોગ ફોર્મ રજૂ કરવા માટે, તમે નથી કે સ્પષ્ટ કરી શકો છો લોકો ત્યાં જવા માટે કરવાનો પ્રયત્ન કરવા માંગો સીધા વિચાર વિનંતી દ્વારા, અથવા તમે નહિં માંગો હતી, તો કેટલાક કારણોસર, એક પોસ્ટ વિનંતી, તમે માત્ર અહીં વિચાર સ્પષ્ટ કરી શકે છે પરંતુ આ ઉદાહરણમાં, અમે ફક્ત આ પોસ્ટ વિનંતી બહાર જવા માંગો છો. તેથી, create_post કહેવામાં આવે છે, ત્યારે ત્યારે અમે પોસ્ટ વિનંતી મારફતે મુલાકાત લો જો તમે ચોક્કસ તું જાય ત્યારે માર્ગ, આ વિનંતી પદાર્થ છે, અને અમે આયાત કરવા માટે હતી ખૂબ જ ટોચ પર વિનંતીઓ, પરંતુ આ વિનંતી છે માં પસાર નહીં કે પદાર્થ, અને તમે માહિતી ઍક્સેસ કરી શકો છો, જે આપોઆપ ભરવામાં આવશે તમે ફોર્મ વિનંતી મોકલી છે. અને પછી, હું શું વિચારો ખરેખર ઠંડી છે ફોર્મ પદાર્થ પસાર કરો કે માત્ર એક પાયથોન શબ્દકોશ છે કે તમે તેથી અહીં access-- તો, દો સમાવે મને હમણાં જ તે આગામી HTML ખેંચવાનો અપ તેથી જો તમે તે કરી શકો છો સંદર્ભ, હા, જેથી અમે અહીં સ્પષ્ટ છે કે નામો વિવિધ ક્ષેત્રો માટે છે, તેથી શીર્ષક અને લખાણ, અમે પછી માત્ર અહીં તે ઉપયોગ ફોર્મ માહિતી માં સૂચકાંક છે. તેથી તે સુપર અનુકૂળ છે. તેથી પછી અમે post.create કૉલ જે બનાવવા અને આપોઆપ દાખલ કરશે ડેટાબેઝ માં આ નવી પોસ્ટ પદાર્થ. અને હું આ કાર્ય બનાવવા લાગે છે અહીં કેવી રીતે એક ખરેખર ઠંડી ઉદાહરણ છે શક્તિશાળી બાટલી અને, આ સાથે કામ કરે છે તમે કંઈક કરી રહ્યા હતા કારણ કે જો PHP, માં, તમે હોય શકે છે માન્યતા ઘણો કરવા માટે, પછી તમે હશે ડેટાબેઝ જોડાણ અધિષ્ઠાપિત, પછી તમે હશે એસક્યુએલ ક્વેરી ચલાવો પરંતુ, અહીં આપણે ફક્ત આ સરસ છે post.create, જે અમે પછી કરી શકો છો ફક્ત માહિતી બહાર વિચાર વિનંતી પદાર્થ, અને પછી એક નવી તેને પસાર અમે બનાવી રહ્યા છો કે પોસ્ટ કરો. અને, ખૂબ જ છેલ્લા પછી અમે કરવા માંગો છો વસ્તુ, પુનઃદિશામાન કરવા માટે છે ઘરમાં વપરાશકર્તા પાછા. અને તેથી અમે આ ઉપયોગ બાટલી કાર્ય પુનઃદિશામાન કરે છે. અને કંઈક આપણે જોયું હતું કે પહેલાં, આ URL કાર્ય હતું. તેથી કાર્ય માટે URL દે તમે ખરેખર નામ પાસ તમારા પાયથોન કોડ એક કાર્ય છે, તેના બદલે ચોક્કસ માર્ગ કરતાં કે તે છે. તેથી હું જ સરળતાથી કરી શકે છે સ્લેશ વપરાશકર્તા રીડાયરેક્ટ જે તેને ઘરે પાછી મોકલી છે, પરંતુ કાર્ય સરસ છે માટે URL નો ઉપયોગ કરીને, તમે ફેરફાર, કારણ કે જો વસ્તુઓ છે જ્યાં સ્થાન, તેથી આપણે હું ફેરફાર કહે છે કે દો ઘર, તેના બદલે / home પર હોવું આ હજુ પણ પછી પાછો આવશે / home, ખરેખર જાય છે અને જુએ છે કારણ કે આ કાર્ય નામ, અને તે તમે તે માટે URL પાછા આપશે. તેથી, પ્રકારની પર તમે છો કે ધારણા જ્યાં વસ્તુઓ બદલવા માટે વધુ શક્યતા કાર્યો નામો કરતાં હોય છે. તમે ખરેખર આ ઉપયોગ કરી શકો છો કાર્ય માટે સરસ URL. અને એક વસ્તુ છે ચેતો કે થોડો મુશ્કેલ છે તમે માત્ર લાગે શકે છે કે છે માટે URL પર પુનઃદિશામાન કૉલ, પરંતુ વાસ્તવમાં આ માર્ગો બધા છે લખાણ અને એચટીએમએલ અમુક પ્રકારના પાછા ફરવા માટે, તેથી જો તમે ખરેખર કરવા માટે હોય છે પુનઃદિશામાન કોલ આવો. નહિંતર, તમે કંઈક મળશે અમાન્ય શબ્દમાળા પાછા ન વિશે આ બધા પાછા છે કારણ કે એચટીએમએલ તમે ખરેખર રેન્ડર કરવા માંગો છો. અને તેથી, તમે પુનઃદિશામાન કૉલ કરો ત્યારે, તે પૃષ્ઠ પર પુનઃદિશામાન પરંતુ વાસ્તવમાં તે HTML આપે તમે તે પુનઃદિશામાન ચલાવવા માટે જરૂર છે. પાછા ઘર પાનાં પર જવા. તેથી અમે આ બે અલગ મંતવ્યો ધરાવે છે. અમે ઘર દૃશ્ય છે. અથવા, હું નમૂનાઓ કહેવું જોઈએ ધારી. અમે આ બે નમૂનાઓ હોય છે, ઘર નમૂનો કે જે અમારા પોસ્ટ્સ તમામ દર્શાવે છે, અને પછી અમે આ જાહેરાત વસ્તુ છે, તમે પોસ્ટ પર ક્લિક કરો ત્યારે, તે જાય બાટલી અંદર એક નવા માર્ગ માટે, પરંતુ તે માર્ગ જરૂરી નથી અનુલક્ષી નમૂનો છે. તમે જુઓ કરવાની જરૂર નથી કંઈપણ છે, પરંતુ તમે હજુ પણ કરી શકો છો આ કામ ચાલી રહ્યું છે પડદા પાછળ છે. અને પછી તમે રીડાયરેક્ટ કરી હોમ પેજ પાછા. અને ચોક્કસપણે, તે કામ કરવા માટે સરળ છે નમૂના કેટલાક માટે NICER સીએસએસ અને આ ઘણો NICER દેખાવ બનાવવા, પરંતુ મુખ્ય તર્ક તમામ આ Python માં છે. કે ઉદાહરણ વિશે કોઇ પ્રશ્નો? હું ઘણો ત્યાં છે ખબર વિવિધ વસ્તુઓ ત્યાં રહ્યું અમે જોઇ ન હતી વસ્તુઓ ઘણો પહેલાં, પરંતુ કંઇ ગમે છે. યાહ. પ્રેક્ષક 1: તમે કંઈ પણ કરવા માટે હોય છે છે કે માહિતી ઝાડી માટે ખાસ ફોર્મ આવતા? હું "બનાવો" તમે હમણાં જ કહ્યું હતું જણાયું એઝરા Zigmond: અરે વાહ, કે જેથી છે ખરેખર, કે જે ખરેખર સારા બિંદુ છે. પ્રશ્ન હતો તેથી, તમે શું તપાસો અને ખાતરી કરવા માટે જરૂર માહિતી, માન્ય છે અને સ્ક્રબિંગ કોઇ પણ પ્રકારની કરવું તે માન્ય છે કે નહીં તેની ખાતરી કરવા માટે, તમે અહીં જોઈ શકો છો, કારણ કે, હું જે કરી રહ્યો છું. તેથી શું થાય છે તે જોવા દો હું ખાલી કંઈક પોસ્ટ તો. તેથી, તે ખરેખર માત્ર એક બનાવવા પડશે ખાલી પોસ્ટ અને તારીખ સમય ભરો. તેથી વાસ્તવમાં, તમે કદાચ કરશે કંઈક કરવા માંગો છો, શીર્ષક સમાન છે, કદાચ સ્પષ્ટ ખાલી શબ્દમાળા, તો પછી આ નથી. શીર્ષક છે અથવા, જો માત્ર તે શું ખાલી શબ્દમાળા બરાબર નથી. તેથી તે ખરેખર આપોઆપ નથી કે સ્ક્રબિંગ કાળજી લેવા તમે માટે છે, તેથી તમે હજુ પણ તે કરવા માટે જરૂર છે. અરે વાહ, સારો પ્રશ્ન. પ્રેક્ષક 2: તે ઝાડી કરે સિક્વલ ઈન્જેક્શન માટે? તમે જાણો છો? એઝરા Zigmond: આસ્થાપૂર્વક, peewee જે કરે છે. હું તે ચોક્કસપણે એક સુંદર હશે એવું લાગે છે ખરાબ પુસ્તકાલય તે ન કર્યું હોય. હું બરાબર ખબર નથી. હું જોવા માટે હોય તો તે પેદા કરી તે શોધો. હું એક માં ટાઇપ, તો લાગે છે કે પ્રકારની જોવામાં કે બ્લૉગ પોસ્ટ એક એસક્યુએલ ઇન્જેક્શન હુમલો જેમ, આ કંઈક, આ તો પાસવર્ડ ક્ષેત્ર અથવા કંઈક જેવું છે, તમે આ કંઈક કરી શકે છે. મને લાગે છે કે હજુ પણ ચાલશે લાગે શાબ્દિક પોસ્ટ મેળવવા માટે, પરંતુ હું peewee કરે છે લાગે છે કે માહિતી સ્ક્રબિંગ અમુક પ્રકારના તે ખરેખર ચલાવે તે પહેલાં. પ્રેક્ષક 1 કે લખાણ ક્ષેત્ર છે અધિકાર, સાદા ટેક્સ્ટ લેવા માટે રચાયેલ? એઝરા Zigmond: અરે વાહ, તે છે. યાહ. તેથી હું તમામ લાગે છે, જેથી આ છે યોગ્ય વર્તન, કે શું કરશે, પરંતુ મને લાગે છે કે peewee લાગે આસ્થાપૂર્વક કરતું નથી તેમના ઓવરને પર રક્ષણ અમુક પ્રકારના. અને તમે ઇચ્છતા હોય તો ડબલ ચેક, કે ત્યાં તમે ક્વેરી પેદા જ્યારે માર્ગો છે. જેથી તમે નથી સીધા જ ચલાવો. હું લેવા હોય તો દસ્તાવેજીકરણ જુઓ, પરંતુ તમે ખરેખર જોઈ શકો છો તે પેદા થાય છે કે એસક્યુએલ, અને તે પર એક નજર, અને બનાવવા તે વસ્તુઓ નીકળતો છે તેની ખાતરી કરો. અન્ય કારણ શા માટે તમે કદાચ એસક્યુએલ જોવા માંગો છો કે peewee તો છે, outputting છે વસ્તુઓ ખરેખર ધીમે ધીમે જતા હોય તેમ જણાય છે તમે એક નજર અને તે શું જોઈ શકો છો તે ક્યારેક કારણ ખરેખર કરી આકસ્મિક ઉમેરવા માટે સરળ , જે રીતે તમે તેને લખી, જો તમે આકસ્મિક તે હોઈ શકે છે પ્રથમ સમગ્ર ડેટાબેઝ પસંદ કરો, અને પછી કેટલાક સૉર્ટ કામગીરી તે પર, જ્યારે તમે ખરેખર ઉપગણ પસંદ કરવા માટે અર્થ થાય છે. અને તેથી, વસ્તુઓ તો નથી તદ્દન અધિકાર રહ્યું તે વિનંતી પર એક નજર સારી છે કે ખરેખર પેદા રહ્યું છે. યાહ. પ્રેક્ષક 2: તમે પ્રથમ શરૂ જ્યારે, તમે 5000 તરીકે પોર્ટ મૂકો. એઝરા Zigmond: યાહ. પ્રેક્ષક 2: peewee સાથે મૂળભૂત છે અથવા તમે બદલી શકો છો કંઈક છે? એઝરા Zigmond: હા, તેથી પોર્ટ બાટલી સાથે મૂળભૂત છે. તમે વિના તે ચલાવો, તો કંઈપણ સ્પષ્ટ, તે આપોઆપ કે શું કરશે. હું હોય તો માને છે આ ડબલ ચેક માટે, પરંતુ તમે app.run કે સ્પષ્ટ કરી શકો છો હું તમને કંઈક કરી શકે છે પોર્ટ = 8080. એક વાસ્તવિક ઝડપી પ્રયાસ આપી દો. અરે વાહ, જેથી તમે માત્ર સ્પષ્ટ કરી શકો છો પોર્ટ = 8080, અને તે તેને ત્યાં ચાલશે જો તમે ઇચ્છતા મને લાગે છે, કે જે ચલાવવા માટે જ્યારે IDE પર, હું આ બહાર પ્રયત્ન કર્યો ન હોય પરંતુ મને લાગે છે કે જો તમે પોર્ટ 8080 પર ચાલી હતી તમે કદાચ સમર્થ હશો સર્વર ઍક્સેસ કરવા માટે, તમે માત્ર વેબસાઇટ માટે હતા ગમે છે. અરે વાહ, તે પણ સરળ છે બદલવા માટે જો તમે જેવા પોર્ટ આગળ ધપાવવાનું કોઇ પણ પ્રકારની હોય છે તમે શું કરવાની જરૂર છે કે જે વસ્તુઓ. કોઈપણ અન્ય પ્રશ્નો છે? અરે વાહ? પ્રેક્ષક 1: તેથી, હું જોયું તમારા , તમે ઉલ્લેખ કર્યો છે કે મોડેલો, તમે સ્પષ્ટ કરવા માટે છે દરેક પદાર્થ માટે ડેટાબેઝ. તમને ખબર થાય છે, કરે છે કે જો તમે તે ખરેખર સરળ બનાવે છે SQLite ડેટાબેઝ ઘણાં હોય છે કે તમે એક વેબ એપ્લિકેશન માટે ઉપયોગ કરવા માંગો છો, તમે માત્ર એક ટોળું સ્પષ્ટ કરી શકો છો કે તમારા મોડેલ માં વિવિધ રાશિઓ? એઝરા Zigmond: અરે વાહ, મને દો વાસ્તવિક ઝડપી ખોલો. તમારી પાસે માંગો છો, તો, તમે કહી રહ્યાં છે કંઇક અલગ એક ટોળું, કદાચ કેટલાક માટે, ગમે છે અને વિદ્યાર્થીઓ કારણ, તે કંઈક? અરે વાહ, જેથી મને લાગે છે કે હજુ પણ તમે, દરેક મોડેલ હજુ હમણાં જ હોય ​​હશે તેને સોંપેલ એક ડેટાબેઝ, પરંતુ જો તમે ઇચ્છતા હોય વિવિધ મોડેલો કે વિવિધ ડેટાબેઝ પદાર્થો સોંપાયેલ છે તે માટે, તમે ચોક્કસપણે તે કરી શકે. તેથી, જો હું એક નવા બનાવવામાં આ કંઈક, અને હવે આ એક વિદ્યાર્થી છે કે વિચિત્ર રીતે એક બ્લોગ પોસ્ટ જેવી લાગે છે મને લાગે છે કે સ્પષ્ટ કરી શકે છે ડેટાબેઝ અહીં db_2 સમાન છે. તેથી, હું કે લાગે છે તમે તે કરી શકો છો મુખ્ય માર્ગ. કૂલ. કોઈપણ અન્ય પ્રશ્નો છે? તેથી માત્ર થોડી અપ સમાપ્ત કરવા માટે બીટ, અહીં કેટલાક સ્રોતો છે, અને આ સ્લાઇડ્સ ઓનલાઇન પોસ્ટ કરવામાં આવશે તેથી જો તમે ખરેખર આ કડીઓ મેળવી શકો છો. શ્રેષ્ઠ સાધનો ખરેખર છે બાટલી દસ્તાવેજો અને પોતાને peewee. તેઓ ખરેખર સારી રીતે લખાયેલ કરી રહ્યાં છો, મને લાગે છે. તેથી, બાટલી વેબસાઇટ અહીં છે, અને તેઓ એક ક્વિકસ્ટાર્ટ ટ્યુટોરીયલ છે કે સમાન લઈ જવામાં આવશે હું મારફતે લોકો ચાલતા જતા હતા શું વસ્તુઓ પરંતુ તમે સમીક્ષા કોઇ પણ પ્રકારની માંગો છો હું ઉપર ગયા કે વસ્તુઓ, અથવા તમે હું સમજાવી વિચાર્યું કે એક ગૂંચવણમાં રીતે કંઈક, તેઓ ત્યાં જ ઉદાહરણો પડશે. Peewee દસ્તાવેજીકરણ ધરાવે છે, અને તેઓ એક ક્વિકસ્ટાર્ટ ટ્યુટોરીયલ છે કે મુખ્ય પરિમાણો પર જાય છે તમે ઉપયોગ કરવા માંગો છો કે જે. તેથી, મેં સાથે વિશે વાત અનન્ય, અને સ્પષ્ટ મૂળભૂતો ક્ષેત્રોમાં આ વિવિધ પ્રકારની છે કે તમે તે બધા ત્યાં હશે, વાપરી શકો છો. પણ, જો તમારી પાસે peewee વિશે પ્રશ્નો અને તમે StackOverflow પર તેમને પોસ્ટ ખરેખર peewee કરનારા વ્યક્તિ પર જાય છે અને ક્યારેક તે જવાબ આપે છે. તમે આસ્થાપૂર્વક એક પ્રશ્ન હોય, તો તેમણે તેને જવાબ આપવા માટે સક્ષમ હશો તેમણે સમગ્ર બાબત લખ્યું છે. મને લાગે છે કે બધું છે એવું લાગે છે હું આવરી માગે છે. બહાર આવતા માટે આભાર.