[સેમિનાર] [Kohana: હળવા PHP, માળખા] [બ્રાન્ડોન લિયુ] [હાર્વર્ડ યુનિવર્સિટી] [આ CS50 છે.] [CS50.TV] હાય દરેકને. મારું નામ બ્રાન્ડોન છે. હું કોલેજ કરી કોમ્પ્યુટર વિજ્ઞાન અહીં એક જુનિયર છું, અને આજે આપણે વિશે વાત રહ્યા છીએ PHP, વેબ વિકાસ ફ્રેમવર્ક છે કે જે Kohana,. આજે જીવંત કોડિંગ સેમિનાર કરી રહ્યું છે, તેથી હું મૂળભૂત રીતે, Kohana શું સમજાવીને 5-10 મિનિટ પસાર કરવા જાઉં છું અને પછી હું શાબ્દિક સુપર સરળ બ્લોગ બિલ્ડ જાઉં છું અહીં શાબ્દિક શરૂઆતથી તમારા માટે. અમે Kohana વેબસાઈટમાંથી કોડ ડાઉનલોડ રહ્યા છીએ અને, અમે એક બ્લોગ નિર્માણ કરવાનું શરૂ કરવા જઈ રહ્યાં છો, અને આસ્થાપૂર્વક તે ખૂબ જ ઉપદેશક હશો તમે કદાચ કદાચ જોશો કારણ કે હું અમુક ભૂલો કરી શકશો, અને તમે મને તેમને પુનઃપ્રાપ્ત જોશો, હું આ બ્લોગ દ્વારા બિલ્ડ અથવા તમે મારા વિચાર પ્રક્રિયા જોશો, અને ત્યાં છે, પણ તમે ફ્રેમવર્ક પોતે સાથે પરિચિત મળશે. આસ્થાપૂર્વક તે ખૂબ જ ઉપદેશક કસરત થશે. પ્રથમ, માળખું બરાબર શું છે? તમે અત્યાર સુધી CS50 લઈ કરવામાં આવી છે, તો તમે ખરેખર કોઇ સાથે કામ કર્યું નહિં હોય માળખા છતાં, અને આ વસ્તુ આ છે. તમે કદાચ પહેલેથી 1 વેબ વિકાસ pset કર્યું અને માતાનો વેબસાઇટ્સને બિલ્ડ કરવા અને મકાન વેબસાઇટ્સ રાખવા ચાલુ કહો. તમે અમુક વસ્તુઓ નોટિસ શરૂ કરી શકશો. તમે ધ્યાન પડશે પ્રથમ વસ્તુ તમે કદાચ એ જ વસ્તુઓ કરી રહ્યાં છે વારંવાર તમામ સમય, વપરાશકર્તા ઈનપુટ માહિતી સફાઈ જેવી વસ્તુઓ, ચોક્કસ રીતે તમારી ફાઇલોને આયોજન જેવી વસ્તુઓ. તમે પણ કદાચ નોટિસ પડશે અન્ય બાબત એ છે કે તમારો કોડ ખૂબ, ખૂબ અવ્યવસ્થિત બની શરૂ કરી શકે છે, અને તમે અવ્યવસ્થિત એમ છોડી દો અને માત્ર એક ખૂબ જ મુશ્કેલ સમય જાળવી છે શકે છે, અથવા તમે તમારા કોડ માળખું શરૂ અને તે મોડ્યુલર બનાવવા શકે તે વધુ નિભાવવા યોગ્ય બનાવવા માટે ચોક્કસ રીતે. વેબ માળખા મૂળભૂત સાઇન આવ્યા જ્યાં છે વેબસાઇટ્સ ઘણો બનાવી છે જે આ લોકો, તેમણે જણાવ્યું હતું કે, "અમે આ અમે એક વેબસાઇટ બિલ્ડ દરેક એક સમય ફરીથી કરવા માટે જરૂર નથી." "શા માટે આપણે તમારા માટે જ આ તમામ બાબતો કરે છે કે પેકેજ બનાવતા નથી દરેક એક સમય તમે વેબસાઇટ બિલ્ડ કરવા માંગો છો? " અને જેથી તમે નવી વેબસાઇટ કરો ત્યારે, તમે માત્ર બરાબર આ ચોક્કસ વેબસાઇટ છે તેના પર ભાર મૂકે છે. તમે બધા વિવિધ રૂપરેખાંકન પુનરાવર્તન કરવાની જરૂર નથી અને કોડ અલગ અને પુનર્લેખન કોડ તમે ઘણી વખત વેબસાઇટ્સને કરી રહ્યા છીએ ત્યારે શું કરવું છે કે. આ વિચાર એક માળખું તમે ઉચ્ચ સ્તરના કોડ લખવા માટે પરવાનગી આપે છે નીચા સ્તરની માહિતી વિશે ચિંતા કર્યા વગર. એ નીચા સ્તરના વિગતવાર કંઈક હોઈ શકે છે વપરાશકર્તા ઈનપુટ માહિતી સાફ સાથે વ્યવહાર. એટલે કે, તમે ખરેખર વિશે ચિંતા કરવાની જરૂર ન જોઈએ કે કંઈક છે. તમે તમારા વેબ ફાળવણી વિશે ખરેખર શું છે તેના પર ધ્યાન કેન્દ્રિત કરવું જોઈએ. તે boilerplate કોડ ઘણો દૂર કરે છે. તે તમારા પ્રોજેક્ટ માટે આર્કીટેક્ચર છે. સૌથી વધુ લોકપ્રિય એક મોડલ-જુઓ-કંટ્રોલર, હશે હું એક બીજા વિશે વાત જાઉં છું છે. અને સમય ઘણો આ માળખા કાર્યવાહી સમૂહ એકમ બનાવવું, તમે ઉપયોગ કરવા માટે નિયમો, અને શ્રેષ્ઠ પ્રયાસો કે જેથી તમે વેબ ફ્રેમવર્ક ગ્રહણ જ્યારે જો તમે ચોક્કસ રીતે તમારા કોડ લખવી અને તે સામાન્ય રીતે એક સિદ્ધાંતો સેટ પર સંમત થયા છે સામાન્ય રીતે માનવામાં આવે છે કે સમુદાય દ્વારા લેખન કોડ એક સારી રીત. તે વધુ ઉપયોગી, તમારો કોડ વધુ નિભાવવા યોગ્ય છે તેથી અને તેથી આગળ. અને છેલ્લે, હું માંગો છો આ વસ્તુ માળખા વિશે પર ભાર મૂકે છે પુસ્તકાલયો વિરુદ્ધ નિયંત્રણ વ્યુત્ક્રમ વિશે આ વિચાર છે, અને આ વસ્તુ આ છે. લાઇબ્રેરી અને માળખું વચ્ચે તફાવત છે એક લાઈબ્રેરી કે જે સાથે તમે હજુ પણ મુખ્ય કાર્યક્રમ લખે છે, અને તમે પ્રકારના ગ્રંથાલયનો શરૂ કરી રહ્યા હોય રહ્યાં છો અને તમારા માટે કંઈક કરવા ગ્રંથાલયનો આજીજી કરી. લાઇબ્રેરી અને માળખું વચ્ચે તફાવત ફ્રેમવર્ક નિયંત્રણ સાથે શરૂ થાય છે કે જે, અને તે તમારા કોડ આહવાન, જેથી તમે તરીકે વિચાર કરી શકો છો - તે એક માળખું કહેવાય છે આ શા માટે છે - ફ્રેમવર્ક તમારો કોડ માટે આ ફ્રેમ અને માળખું પૂરું પાડે છે, અને તમે છિદ્રો ભરો, અને આ બીજા વધુ સ્પષ્ટ બની જશે તમે જોઈ ત્યારે મને માળખામાં સંદર્ભમાં અંદર કોડ લખવા માટે શરૂ કરો. તમે મને અવકાશ ભરવા છું જોશો કે, અને માળખું પ્રકારની, બધા ફરતા ટુકડાઓ નિયંત્રિત છે અને હું યોગ્ય સ્થળોએ ટુકડાઓ મૂકવો પડશે. આજે આપણે Kohana વિશે વાત જઈ રહ્યાં છો, જે ઘણા PHP, માળખા છે. , વેબ માળખા છે, અને મુદ્દાઓ વર્ચ્યુઅલ દરેક એક ભાષામાં છે Kohana હોવાની દલીલ છે કારણ કે હું Kohana ચૂંટતા છું અને સામાન્ય રીતે પસંદ કરવા માટે સૌથી સરળ PHP, માળખા તરીકે ઓળખાય છે. તે એક સૌથી હલકો છે. ઘણી વધુ સુવિધાઓ સાથે આવે છે કે ત્યાં અન્ય મુદ્દાઓ છે પરંતુ તેઓ પસંદ કરવા માટે વધુ મુશ્કેલ હોય છે. અને છેલ્લે, Kohana ના MVC સ્થાપત્ય ઉપયોગ કરે છે. તે અમે શાબ્દિક એક પ્રોજેક્ટ બનાવી શકો છો કે પૂરતી હળવા છે અહીં તમારા આંખો સામે છે, અને તમે ખૂબ ખૂબ કરી શકો છો ખૂબ સરળતાથી સાથે અનુસરો. આ MVC સ્થાપત્ય શું છે? તે મોડલ-જુઓ-કંટ્રોલર માટે વપરાય છે તમે કોડ વિશે વિચારો અને જો કદાચ તમે અત્યાર સુધી લખાણ થઈ તમારા વેબ વિકાસ psets કેટલીક તમે લેખન શરૂ જ્યારે તમે સામાન્ય રીતે આ કેટલાક જોવા માટે સક્ષમ હોઇ શકે, પણ વધુ જટિલ વેબ એપ્લિકેશન, આ 3 વિભાગો વચ્ચે વિભાજન વધુ અને વધુ સ્પષ્ટ બની જાય છે. હું પ્રકારની એક સ્ટેક તરીકે અહીં MVC નાખ્યો અને ઘણી વખત તમે લોકો વેબ વિકાસ રન ટાઇમ સ્ટેકનું વિશે વાત સાંભળવા મળશે, અને આ વિચાર સમજાવે છે કે દરેક સ્તર, દરેક ઘટક ખરેખર માત્ર વાતચીત કરવાનો પ્રયાસ કરે છે 2 અન્ય ઘટકો વચ્ચે. કોઇએ ક્લાઈન્ટ અથવા બ્રાઉઝર તરીકે તમારી વેબસાઇટ ઍક્સેસ. તેઓ જુઓ કોડ દ્વારા તમારા કાર્યક્રમ સાથે ક્રિયાપ્રતિક્રિયા કરે છે. આ દૃશ્ય કોડ નિયંત્રક સાથે સંપર્ક કરે. આ નિયંત્રક, આ મોડેલ સાથે સંપર્ક અને મોડલ એસક્યુએલ ડેટાબેઝ સાથે ક્રિયાપ્રતિક્રિયા કરે છે. તમે યોગ્ય રીતે તમારું કોડ લખો અને જો વચ્ચે કોઈ Hopping છે. આ વસ્તુઓ શું કરી શકું? આ મોડેલ અનિવાર્યપણે તમારા ડેટાને સાથે સોદા કોડ શાળા સ્થાન ભાગ છે. તમે સંગ્રહ કે વસ્તુઓ સાથે, તમારા ડેટાબેઝ સાથે સોદા કંઈપણ, અથવા ડેટાબેઝમાં તે વસ્તુઓ પ્રાપ્ત, કે તમામ મોડેલ દ્વારા નિયંત્રિત છે. કદાચ તમે તમારા ડેટાબેઝમાં વસ્તુઓ છે. અમે પોસ્ટ્સ સાથે કરી રહી એક મોડેલ બનાવવા જઈ રહ્યાં છો, જેથી પોસ્ટ તે કેટલાક લક્ષણો હોઈ શકે છે. તમે તે પોસ્ટ્સ સ્ટોર અથવા પોસ્ટ્સ પ્રાપ્ત આસપાસ કાર્યો કરતા હોય છે શકે છે અથવા એમ છે અને તેથી આગળ પોસ્ટ્સ અને ગાળણ, અને તે આ મોડેલ દ્વારા નિયંત્રિત છે કે જે બધી કોડ છે. આ નિયંત્રક અરજી તર્ક જેવું છે, અને વિવિધ વસ્તુઓ ઘણો અરજી તર્ક જઈ શકે છે. જો તમે વિવિધ API માં વાત કરી રહ્યાં છો, તમે અરજી તર્ક સાથે કામ કરીએ છીએ જ્યાં હોય. તમે ઘણી વિવિધ મોડેલો માહિતી લઇ આવ્યા પ્રયાસ કરી રહ્યા છો અને ઘણી વખત આ નિયંત્રક દ્વારા નિયંત્રિત કરી શકે છે, તેમને અમુક રીતે ભેગા છે. ઉદાહરણ તરીકે, ફેસબુક પર, તમે મિત્ર કોઈને તો, કે સંબંધ સ્થાપવા પછી કદાચ કે અધિનિયમ આ નિયંત્રક દ્વારા કરવામાં આવી શકે છે. અને આખરે, એ જુઓ તમે ખરેખર શું પેદા છે કે કોડ છે. વખત ઘણાં હું CS50 psets માં લાગે છે તેઓ ખરેખર આ 3 વસ્તુઓ અલગ તમને ગાય્ઝ માટે પ્રોત્સાહિત નથી. તમે કદાચ ટોચ પર જ્યાં આ મોટું લાંબા ફાઈલ પડશે તમે કેટલાક એસક્યુએલ ક્વેરી કરો અને કદાચ અમુક પ્રક્રિયા કરી ડેટા પર તમે, ડેટાબેઝ માંથી પાછી લાવી દેવામાં અને પછી તમે નીચે બધા તમારા HTML છે. તમે વધુ અને વધુ પૃષ્ઠો બનાવી તરીકે અને તમે શોધી શકો છો કે તમે પણ કેટલાક કોડ પુનરાવર્તન હોય રહ્યા છે, અને કરી રહ્યાં છો, આ વસ્તુ તમારી ફાઈલ ખરેખર મોટી અને લાંબા નહીં છે અને વ્યવસ્થા કરવા અતિભારે બની જાય છે. MVC એટલી સારી રીતે ગણવામાં છે કારણ શા માટે એના અનેક કારણો છે માટે છે. પ્રથમ વસ્તુ ચિંતા અલગ કંઈક કહે છે જે તમારી પાસે જ્યારે તે વિચાર છે - કોડ ઓફ આદર્શ 1 ભાગ, 1 વસ્તુ કરવા અને તે ખરેખર સારી રીતે કરવું જોઈએ અને તમે વિવિધ વસ્તુઓ કે કોડ ટુકડાઓ ભેગા ન જોઈએ. ઉદાહરણ તરીકે,, કોડ અને મોડેલ કોડ જોવા તેઓ ખરેખર સંબંધિત છે નથી. તમે તેમને અલગ કરી શકે છે જ્યારે તેઓ એ જ ફાઈલોમાં હોય છે, તેથી નથી તેથી તે જાળવવા માટે સરળ છે. અન્ય બાબત કોડ પુનઃઉપયોગ છે. તમે તમારી જાતને જ એસક્યુએલ ક્વેરી લખી અથવા કરી શોધી શકો છો 1 કાર્ય માં શૂન્યમનસ્ક કરી શકાય છે જ પ્રશ્નો, અને તે, આ વિચાર મોડેલો અને નિયંત્રકો પાછળ છે તમે તમારા પ્રોજેક્ટમાં વિવિધ સ્થળોએ ફરી ઉપયોગ કરી શકો છો કે જે અલગ કાર્ય માં તે હોય છે. અને છેલ્લે, કે, તમારો કોડ સૂકવણી સાથે જોડાયેલું છે અથવા તમારી જાતને પુનરાવર્તન નથી, તમારી જાતને પુનરાવર્તન નથી. આ વિકાસ ખૂબ જ સમજી છે. તમે, તમે તમારી જાતને પુનરાવર્તન, કારણ કે, તમારી જાતને પુનરાવર્તન કરવા માંગો છો નથી કરી શકો છો જ્યારે પણ,  તે વધુ ખર્ચાળ જાળવી છે. તમે 1 વસ્તુ બદલવા માંગો છો, તો તમે દરેક જગ્યાએ તેને બદલવા માટે છે અને તે ભૂલો તરફ દોરી જાય છે, અને તે ભયાનક છે. અધિકાર છે. અત્યાર સુધી Kohana વિશે કોઈ પ્રશ્ન બધા? સરસ. હવે અમે જીવંત કોડિંગ સત્ર માં ડાઇવ જઈ રહ્યાં છો, અને આશા છે બધું સારી રીતે જાય છે. હું મૂળભૂત રીતે આ વેબસાઇટ બિલ્ડ જાઉં છું મારા દૂરસ્થ સર્વરો છે, અને તમે ગાય્ઝ પણ કરી શકો છો કે જે રીતે પર વેબસાઇટ જુઓ અને વેબસાઈટ, અને એ પણ પર્યાવરણ, મારા દૂરસ્થ મશીન કરતાં વધુ સારી રીતે રૂપરેખાંકિત થયેલ છે તેના બદલે OS X વિતરણ શક્ય છે કે Linux ચલાવી રહેલ છે કારણ કે અમે શાબ્દિક શરૂ રહ્યા છીએ. KohanaFramework.org. હું વેબસાઈટ પરથી ડાઉનલોડ કોડ જાઉં છું. હું લિંક આંકડાના નકલ જાઉં છું, મારા સર્વર પર જાઓ, તે ડાઉનલોડ કરો, અને હું તેને બહાર કાઢવા જાઉં છું. [વિદ્યાર્થી] તમે લખાણ કરી શકો છો સૌથી શું છે? [બ્રાન્ડોન લિયુ] કે વધુ સારી છે? [વિદ્યાર્થી] [બ્રાન્ડોન લિયુ] અરે વાહ, કે દંડ છે કે doable? છે. હું એક ઝિપ ફાઇલ ડાઉનલોડ અને Kohana કહેવાય ડિરેક્ટરીમાં કે unzipped અને અમે કે CS50-Kohana નામ બદલી રહ્યા છીએ અને સાઇન જાઓ ઓસમ. અહીં તમે વિવિધ ફાઈલો સમૂહ જુઓ. તમે મોટા ભાગના અવગણી શકો છો - અહીં છે કે દરેક એક ફાઇલ મારફતે પસાર થવા માટે નથી જતા we're અમારા સમય પરિમાણોને કારણે, પરંતુ સામાન્ય રીતે તમે Kohana, જો તમે કરો, પ્રથમ વસ્તુ સ્થાપિત કરો ત્યારે તમારે ડિરેક્ટરી પર જાઓ છે, અને તમે એ મૂળભૂત રીતે કેટલાક પર્યાવરણ પરીક્ષણો અને whatnot કરીશ ખાતરી કરો કે તમારું પર્યાવરણ યોગ્ય રીતે Kohana ચલાવવા માટે સુયોજિત છે અને બધું બધા અધિકાર છે કે નહીં તેની ખાતરી. તમે મોટા ભાગની વસ્તુઓ પસાર જોઈ શકે છે, પરંતુ સામાન્ય રીતે તમે હંમેશા આ 1 સમસ્યા સ્કોર તે કેટલાક ડિરેક્ટરી લખી શકાય તેવી નથી કે ફરિયાદ છે અને તે છે કારણ કે કેટલાક પરવાનગી છે. હું તમને ગાય્ઝ CS50 માં ફાઇલ પરવાનગી વિશે શીખી છે કેટલી ખબર નથી તમે વેબ વિકાસ કરી, તો તમે આ સમસ્યાને માં ઘણો સ્કોર રહ્યા છીએ. હું તે લખી શકાય તેવી બનાવવા જઈ રહ્યો છું અમે જાઓ ત્યાં - અને હું હું પણ મળી ગયો છે. ઠીક છે, તેથી હવે તમે બધું પસાર જોઈ શકો છો, અને હવે તે INSTALL.PHP ફાઈલ નામ બદલી તમને જણાવશે. હું installed.php ના INSTALL.PHP ફાઈલ ખસેડવા જાઉં છું, અને હવે હું તાજું જો તે મને કેટલાક ભૂલ આપે છે, અને ડિબગીંગ સાઇન આવે છે આ છે તમે ખરેખર શું ચાલી રહ્યું છે તે જોઈ શકો છો જ્યાં આ છે. આ બાબત એ મૂળભૂત રીતે, Kohana ધારે છે કે, છે તમારા પ્રોજેક્ટ, તમારા ડોમેન રૂટ ડાયરેક્ટરી છે તેથી તે તમને demo.brandonkliu.com હોવા અપેક્ષા છે. અમે તેને એક subfolder ખરેખર જ કે તે કહેવું છે. તે CS50 Kohana કહેવાય subfolder છે. આ બાબત તે CS50-Kohana misinterpreting છે, છે હું બીજા તમારા માટે સમજાવવા પડશે કે જે કંઈક બીજું, એ. પરંતુ મને લાગે છે કે રાખી શકાય છે કે કંઈક છે તમે કહો જોઈએ. અમે શું કરી રહ્યા છીએ, અમે bootstrap.php કહેવાય ફોલ્ડર માં જાઓ રહ્યા છીએ છે જે વિવિધ વસ્તુઓ ઘણો સેટ છે કે જ્યાં રૂપરેખાંકન ફોલ્ડર છે. હું ખોલો. પછી કદાચ હું કરીશ પ્રથમ વસ્તુઓ છે કે ટાઈમ ઝોન બદલી છે. અને પછી ચાલો જુઓ. કટાક્ષ! અહીં અધિકાર. વિવિધ રૂપરેખાંકન ઉક્તિ સમૂહ અહીં છે, પરંતુ હું શોધી રહ્યો છું આ એક, બેઝ URL કહેવાય છે તે વસ્તુ અને મૂળભૂત રીતે હું તે Kohana પર સેટ વિચાર પરંતુ હું CS50-Kohana થી ફેરફાર કરવા જઇ રહ્યો છું અને મને તે તે નક્કી કરવી જોઈએ છે. હા, સરસ. મૂળભૂત રીતે, તે, તે કહે છે, કામ કરી રહ્યા છે કે નહીં તે જોવા "હેલો વર્લ્ડ." કે ક્યાંથી આવ્યા હતા? આપણે કઈ રીતે હેલો વર્લ્ડ મેળવવા માટે કરી? બરાબર જ્યાં ખરેખર લખ્યું હતું કે કોડ કે જે છે? સમજે છે કે, હું રાઉટીંગ કહેવાય વિચાર રજૂ કરીશું. ખૂબ ખૂબ બધા વેબ માળખા, રાઉટીંગ કહેવાય ખ્યાલ છે ચોક્કસ URL ને સ્પષ્ટ છે કે જે સોફ્ટવેર ભાગ છે કે જે તમારા માળખામાં કોડ ચોક્કસ ભાગ છે. તમે કેટલાક URL છે અને ઉદાહરણ તરીકે, જો તમે જેમ foo.com / બ્લોગ / બધા કેટલાક URL પર જાઓ પછી શું માળખામાં કરી રહ્યું છે - અથવા ઓછામાં ઓછા શું Kohana કરી રહ્યું છે - તે નિયંત્રક બ્લોગ કહેવાતા વર્ગ શોધી રહ્યા છે છે અને તે તમામ કાર્ય નામ આપવામાં આવ્યું ક્રિયા ચલાવવા બનશે. હું વર્ગ અને કાર્યો વિશે વાત કરું છું ખબર છે, અને હું તમને ગાય્ઝ વર્ગો અને કાર્યો આવરી લેવામાં આવી છે ખબર હજુ સુધી CS50 માં, પરંતુ હવે માટે, તમે વિધેયો માત્ર એક જૂથ તરીકે વર્ગો વિચાર કરી શકો છો, એક સાથે કાર્ય જૂથ એક માર્ગ. કે ખરેખર તમે જાણવા જરૂર છે. હવે અમે અમારા ફોલ્ડર સંરચના જોવા, અરજી ફોલ્ડરમાં વર્ગો કહેવાય બીજું ફોલ્ડર છે, અને અન્ય ફોલ્ડર્સ કંટ્રોલર અને મોડલ તરીકે ઓળખવામાં આવે છે. તમે કંટ્રોલર ફોલ્ડર અંદર જુઓ, અમે સ્વાગત તરીકે ઓળખાતી ફાઈલ છે કે નહીં તે જોવા અને તમે અહીં જુઓ કંટ્રોલર સ્વાગત કહેવાતા વર્ગ છે શકે અને ક્રિયા ઇન્ડેક્સ કહેવાય કાર્ય છે, અને તે શું છે તે હેલો વર્લ્ડ તમારા પ્રતિભાવ શરીર સુયોજિત કરે છે. FIPS એ લખવામાં આવી રહી છે કે જ્યાં. અન્ય પ્રશ્ન, સાથે સાથે, હું ગયા નહોતા છે મૂર્ખામી ભરેલી વાહિયાત વાત, મૂર્ખામી ભરેલી વાહિયાત વાત, મૂર્ખામી ભરેલી વાહિયાત વાત, / સ્વાગત / ઇન્ડેક્સ. હું અહીં કેવી રીતે રાખવામાં આવી? વેલ, તે સરળ છે કારણ કે છે અહીં અમારા બુટસ્ટ્રેપ ફાઇલ તળિયે આપણે વધુ સેટ જ્યાં તમે તેઓ તમારા માટે કેટલાક મૂળભૂત સુયોજિત છે જોઈ શકે છે. મૂળભૂત નિયંત્રક સ્વાગત છે. મૂળભૂત ક્રિયા સૂચકાંક છે. આપણે ત્યાં કંઈ મૂકી ત્યારે તે આપોઆપ સ્વાગત નિયંત્રક ગયા કે શા માટે અને ઇન્ડેક્સ ક્રિયા. બધું અત્યાર સુધી અર્થમાં છે? હવે, તમે માત્ર નિયંત્રક પર જાઓ કરતાં વધુ શું કરી શકો છો અને ચોક્કસ ક્રિયા. તમે પણ આ નિયંત્રક માટે પરિમાણો પાસ કરી શકો છો. માત્ર એક ઉદાહરણ તરીકે, હું તમને બતાવવા માટે આ નિયંત્રક અન્ય ક્રિયા ઉમેરો જાઉં છું. તે તમને આપી ગમે તમને કહી રહ્યું છે કારણ કે માતાનો, ઇકો આ ક્રિયા ફોન કરો, અને તેથી હું મૂળભૂત ગ્રેબ જાઉં છું રાઉટિન્ગ કાર્યક્રમ માટે મને મોકલી શકાય બનશે કે પરિમાણ, અને તમે અહીં જોઈ શકો છો, અહીં આ વાક્ય, તમે જોઈ શકો છો કે આ રીતે, તમે નિયંત્રક છે, અને તમે / હોય છે અને, તમે ક્રિયા છે, અને તમે અન્ય / છે અને તે પરિમાણો જ હશે, અને અમે આ નામ આઈડી કારણ કોણ કૌંસ અંદર, કે અમે આ પરિમાણ ID ને નામકરણ કરી રહ્યાં છે. પછી મારા નિયંત્રક કોડમાં હું પરિમાણ એક પકડ ગ્રેબ કરવા માંગો છો, હું ID ને નામ આપવામાં પરિમાણ શોધવા માટે, હું લખ્યું કોડ વાપરી શકો છો. કે હું અહીં કર્યું છે, અને હું પાછા આવો અને કહેવા જાઉં છું, કે "તમે જણાવ્યું હતું કે,". અને તેથી હવે હું અમારી વેબસાઇટ પર જાઓ હું cs50-kohana/welcome/echo/Helloooo-- પર જાઓ ઓહ, તે સાચું છે. હું છોડી 1 પગલું છે. આ જીવંત કોડિંગ વિચાર એક ભાગ છે. અહીં 1 વાત છે. ચાલો જોવા. તેથી સામાન્ય રીતે આ વેબ એપ્લિકેશન્સ ઘણો સાથે મૂળભૂત રીતે તમે તમારા URL માં આ index.php વસ્તુ સમાવેશ થાય છે, વિચાર index.php પ્રવેશ બિંદુ જેવું છે કારણ કે તમારી અરજીના, પરંતુ અલબત્ત, કે જેવું નકામી હોય છે. તમે index.php તમારું URL બતાવી નથી માંગતા અને બોક્સની બહાર ખૂબ ખૂબ દરેક વેબ ફ્રેમવર્ક આ index.php સમસ્યા છે, અને તેથી જો તમે તે દૂર કરવા માટે સક્ષમ હોય છે કેટલાક પગલાં લઇ જાય છે. અને તેથી આ કિસ્સામાં, અમે શું કરી રહ્યા છીએ અમે. htaccess મા નિર્ધારિત તરીકે ઓળખાતી ફાઈલ ઉપયોગ જઈ રહ્યાં છો છે, અને આ, અપાચે વેબ સર્વર માટે વિશિષ્ટ છે કે જે કંઈક છે અને તે લખાણ લખે URL ને જેવી વસ્તુઓ કરી શકો છો અને તેથી અને તેથી આગળ URL અને પુનઃદિશામાન થયેલ છે, અને Kohana અમે ઉપયોગ કરી શકો છો કે જે નમૂનો. htaccess મા નિર્ધારિત ફાઇલ પૂરી પાડવા માટે પૂરતી સરસ છે. તમે જોઈ શકો છો >>, example.htaccess કહેવાય ત્યાં ફાઈલ છે, અને અમે. htaccess મા નિર્ધારિત કરવા કે નકલ રહ્યા છીએ. હું આ ખોલો અને ફેરફાર કરવા માટે જાઉં છું, અને મૂળભૂત તેને અલગ અલગ વસ્તુઓ સમૂહ છે. તમે જોવા માટે કરી શકો છો કી વાક્ય અહીં છે. આ વિચાર, આ છે એ દર્શાવતી નિયમ સુયોજિત કરે છે "ઠીક છે, ગમે તમે તે માટે, અંત થાય છે index.php લખો." તમે જોઈ શકો છો કે. આ. *, ખાવા સાથે મેળ કંઈપણ માટે વપરાય છે અને પછી બીજા ભાગમાં, index.php / $ 0 છે અને Rs 0 અગાઉ મેળ ખાતી આવ્યું હોય તેને ઉલ્લેખ કરે છે. કે અર્થમાં છે? પરંતુ હું બદલવા માંગો છો આ ખરેખર કી વસ્તુ આ લખાણ લખે આધાર ફેરફાર છે જે URL ને આધાર છે. તમે કામ કરી રહ્યા છીએ છે તે પ્રકારના ધારે છે. હું કે જે CS50 Kohana ઉમેરો જાઉં છું, અને તે રીતે હવે હું index.php દૂર જો, તે કામ છે, અને મને કેટલાક નંબર સાથે ઉમેરો જાઉં છું તે ખરેખર કામ કર્યું છે કે જે તમને બતાવવા માટે. સારી લાગે છે. અત્યાર સુધી કોઈપણ પ્રશ્ન છે? [વિદ્યાર્થી] કેવી રીતે તે 123 બનાવે છે ખબર છે? કે એક દલીલ છે? ચોક્કસ. તમે માત્ર એક દલીલ જેવા વિચાર કરી શકો છો. પરંતુ વિચિત્ર બાબત છે, જોકે, કે Kohana તે કરે છે જે રીતે તેઓ બરાબર એક દલીલ જેવા ન કરવું છે. તમે તેને આ રીતે પકડી રાખવું પડે છે. જો તમે વિનંતી પદાર્થ ગ્રેબ અને ID ને નામ આપવામાં આવ્યું છે કે પરિમાણ માટે પૂછતા હોય છે, અને તે નામ ID ને કે બુટસ્ટ્રેપ ફાઇલ માંથી આવે છે , હું પહેલાં જોવા મળ્યો, અને નામ ID ને તે કોણ કૌંસ હતી અને તે તમે તે પરિમાણો ગ્રેબ કેવી રીતે. ઓસમ. કોઈપણ અન્ય પ્રશ્નો છે? હું જણાવ્યું હતું કે, જેમ, નિયંત્રકો, તેઓ અરજી તર્ક સંભાળી જેથી તમે જોઈ શકો છો કે જ્યાં that's 1 ઉદાહરણ છે - , તે ખૂબ જ મૂળભૂત છે, પરંતુ તે હજુ પણ અરજી તર્ક છે પરિમાણ પડતો અને નવા શબ્દમાળા બનાવવા વિચારને "તમે મૂર્ખામી ભરેલી વાહિયાત વાત જણાવ્યું હતું કે," કહે છે અને પછી તમને જે પાછા spitting છે. અને સામાન્ય રીતે તમે શું તમે વિવિધ નિયંત્રકો બનાવી છે. તમે તમારી વેબસાઇટ વિવિધ ભાગોમાં માટે અલગ નિયંત્રકો બનાવો. આજે અમે ખૂબ જ સરળ વેબસાઇટ બનાવવા જઈ રહ્યાં છો, અને તે ખૂબ જ મૂળભૂત બ્લોગ જ હશે. અમે હમણાં જ એક બ્લોગ માં પોસ્ટ્સ માટે નવી નિયંત્રક કરી રહ્યા છીએ. પરંતુ પછી હું પણ બ્લોગ પોસ્ટ ટિપ્પણીઓ ઉમેરવા તો પછી હું કદાચ તે ટિપ્પણીઓ માટે નવી નિયંત્રક બનાવવા માંગો છો કરશે. હું વપરાશકર્તાઓ ઉમેરવા માગતા હતા, હું કદાચ તે વપરાશકર્તાઓ માટે નવી નિયંત્રક ઉમેરો કરશે, અને સામાન્ય રીતે, આ વિચાર કે તમે નવી મોડલ છે ત્યારે, તમારી સાથે કામ કરીએ છીએ કે નવી માહિતી પદાર્થ, તમે તે માહિતી પદાર્થ માટે એક નિયંત્રક છે. આજે આપણે માત્ર 1 માહિતી પદાર્થ સાથે કામ કરવા માટે જઈ રહ્યાં છો, અને તે પોસ્ટ્સ જ હશે, અને તમને કોષ્ટકો અનુલક્ષીને તરીકે માહિતી વસ્તુઓ વિચાર કરી શકો છો. સામાન્ય રીતે દરેક કોષ્ટક માહિતી પદાર્થ 1 પ્રકાર સાથે સંકળાયેલુ છે, જેથી પોસ્ટ ટેબલ, 1 પોસ્ટ મોડેલ હશે કે અનુલક્ષીને 1 પોસ્ટ નિયંત્રક હશે કે જે, અને ટિપ્પણીઓ, એમ છે અને તેથી આગળ વપરાશકર્તાઓ માટે જ છે, અને માટે જ. અને તે અંગૂઠો એક સામાન્ય નિયમ છે. તમે તે અલગ પડી શકે છે ખાસ કિસ્સાઓમાં હોય જવું છે, પરંતુ તમે કરી કરી રહ્યા છીએ શું છે કે તે સમયના 90%, અને મને તે આજે આપણે કરી કરી રહ્યા છીએ શું તમે બતાવીશું. 1 અમે પાછા કોડ ડાઇવ પહેલાં વધુ ખ્યાલ, પદાર્થ સંબંધ મેપિંગ આ વિચાર. તમે ગાય્ઝ પહેલાથી જ વેબ વિકાસ pset કર્યું છે, અને તમે, તમે એક એસક્યુએલ ક્વેરી બનાવે છે જોઇ છે અને તે તમને આપે છે ગમે પંક્તિઓ છે. તમે કેટલાક નામ દ્વારા તેમને આ પંક્તિઓ વિચાર, અને તમે અનુક્રમણિકા સ્તંભ અને ટેબલ નામ, અને તે, તમે તેની સાથે કેવી રીતે કામ કરે છે અને તેને થોડી કષ્ટદાયક હોઈ શકે છે. પરંતુ વધુમાં, તમે તમારા ડેટાબેઝ અંદર સંબંધો હોય છે, જેવા ઉદાહરણ તરીકે હું ટિપ્પણીઓ અને પોસ્ટ્સ હોય તો પછી કદાચ હું એક ટિપ્પણી માટે વાલી પોસ્ટ ગ્રેબ કરવા માંગો છો. હું SQL માત્ર પંક્તિઓ ઉપયોગ કરો છો, તો પછી હું મેળવી શકો છો તમામ ID છે પિતૃ પોસ્ટ અને નહિં કે વાસ્તવિક પોસ્ટ. અમે કોડિંગ કરી રહ્યાં છો ત્યારે, શું આપણે ખરેખર માંગો છો ખરેખર ગ્રેબ છે  પિતૃ ક્યારેક પોતે પોસ્ટ કરો. સંબંધ મેપિંગ કરે છે શું પદાર્થ તે ડેટાબેઝ ક્વેરી પરિણામો લે અને સાથે કામ કરવા માટે ખૂબ NICER છે કે જે તમે માટે વસ્તુઓ, માં મૂકે સાદા એરે અને પંક્તિઓ કરતાં. ઉદાહરણ તરીકે, હવે હું કદાચ એક ટિપ્પણી હોય અને હું તેના પિતૃ પોસ્ટ ગ્રેબ કરવા માંગો છો, અને હું કદાચ તીર પોસ્ટ ટિપ્પણી નથી, પછી તે ખરેખર મને પોસ્ટ પદાર્થ આપશે વાસ્તવિક પિતૃ પોસ્ટ અનુલક્ષીને, કેટલાક આઈડી નથી માત્ર, જે હું તો પોસ્ટ ગ્રેબ અન્ય એસક્યુએલ ક્વેરી ઉપયોગ કરે છે અને બનાવવા માટે હોય છે, કષ્ટદાયક અને બિનજરૂરી છે. અને વધુમાં, વસ્તુઓ માં આ તમામ માહિતી પંક્તિઓ મૅપ દ્વારા, તમે પણ વસ્તુઓ માટે વધુ કાર્યો જોડી શકો છો, તેથી ઉદાહરણ તરીકે, હું વર્ગો આવશ્યક કાર્યો જૂથો છે તે વિશે વાત કરી હતી. તમે તેને જેમ વિચાર કરી શકો છો. ઉદાહરણ તરીકે, કદાચ હું આ પોસ્ટ પદાર્થ હોય છે, અને કદાચ હું તે સાથે જોડાયેલ કાર્ય અમુક પ્રકારની છે કરવા માંગો છો તે મૂળભૂત રીતે મને તે તાજેતરમાં પોસ્ટ કરવામાં આવ્યું હતું કહે છે? તે સાચું કે ખોટું, છેલ્લા સપ્તાહમાં અંદર પોસ્ટ કરવામાં આવ્યું હતું? અને તે હું કે વસ્તુ પર જોડી શકો છો એક કાર્ય છે, અને તે જ જગ્યાએ તે ખરેખર અનુકૂળ છે અને તમે બનાવી શકો છો વિવિધ કાર્યો એક યજમાન છે આ વસ્તુઓ, અને તે એક વર્ગ સાથે જોડે છે શકવી એ ખરેખર સારું છે, એક પદાર્થ માટે, તમે ફક્ત તમારા ડેટાબેઝ આવતા પંક્તિઓ હોય તો, જ્યારે, પછી તમે ખરેખર છે કે કોઈ પણ વિધેય નથી જોડી શકે છે. તે શાબ્દિક માત્ર માહિતી છે. બધા તે વિશે કોઈ પ્રશ્ન? ORMs ખૂબ જ સામાન્ય વેબ વિકાસ છે, અને ORMs વિવિધ પ્રકારના ઘણો છે, અને Kohana તેના પોતાના ORM છે. તે ખૂબ જ મૂળભૂત છે, પરંતુ તમે તેને શું લાગે છે એક સ્વાદ મળશે. માતાનો અમારા બ્લોગ પોસ્ટ્સ માટે એક મોડેલ બનાવીએ, અને અમે ચોક્કસપણે શું કરવાની જરૂર પ્રથમ વસ્તુ એક વાસ્તવિક ટેબલ બનાવવાનું છે અમારા ડેટાબેઝમાં અંદર ખરેખર તે પોસ્ટ્સ માટે અમારી માહિતી સંગ્રહવા માટે. હું કરવા જાઉં છું પ્રથમ વસ્તુ phpMyAdmin પર જાઓ છે. તમે ગાય્ઝ પહેલાં phpMyAdmin ઉપયોગ? ઠીક છે, અદ્ભુત છે, જેથી તમે ગાય્ઝ પહેલાથી જ તે શું છે ખબર, અને હું Kohana પોસ્ટ્સ તરીકે ઓળખાતી નવી કોષ્ટક બનાવવા જઈ રહી છું, અને તે ખરેખર સરળ હશે. હું ફરીથી પ્રવેશ કરવો પડશે આજે આપણે કરી રહ્યા છીએ બધા એક લેખક અને શરીર હોય છે, માત્ર તેને સરળ રાખો. હું કે ટેબલ બનાવવા જઈ રહી છું, અને હવે અમે અમારા પોસ્ટ્સ રજૂ કોષ્ટક છે અમારા લેખક અને આપણા શરીર માટે 2 ક્ષેત્રો સાથે. હવે હું શું કરીશ અન્ય બાબત છે તે ડેટાબેઝ સાથે જોડાવા માટે કેવી રીતે જાણે છે તેથી મારા વેબ એપ્લિકેશન રૂપરેખાંકિત કરો, અને આ, ફરીથી, તમે તમામ વેબ કાર્યક્રમો સાથે કરવા પડશે કે કંઈક છે. તમે તે વપરાશકર્તા નામ અને પાસવર્ડ કહેવું છે અને ડેટાબેઝ ના નામ અને તેથી પર અને તેથી આગળ વાસ્તવમાં તમારા ડેટાબેઝ સાથે જોડાવા માટે બહાર આકૃતિ કેવી રીતે. Kohana, અમે ડેટાબેઝ મોડ્યુલ કહેવાય છે તેની છે અને રૂપરેખાંકન ફોલ્ડર અમે ડેટાબેઝ કહેવાય ફોલ્ડર છે તમે જોઈ શકો છો અને, તમે અહીં સેટ હોય છે સેટિંગ્સ એક ટોળું હોય છે વપરાશકર્તા નામ અને પાસવર્ડ છે તે શું કહેવું ડેટાબેઝ માટે, જેથી હું ખરેખર તેની સાથે જોડાઈ શકે. અને હું તમને ગાય્ઝ ખરેખર ખબર નથી માંગતા કારણ કે વપરાશકર્તા નામ અને મારા ડેટાબેઝમાં પાસવર્ડ, હું પહેલાથી જ તે બધા સુયોજિત જ્યાં ફાઈલ હોય છે, અને હું નકલ અને તેની પર પેસ્ટ કરો જાઉં છું. ઓસમ. ઠીક છે. હું કે હું શું કરવા માટે જરૂરી બધા રૂપરેખાંકન છે લાગે છે, પરંતુ આપણે જોઈ. કંઈક ક્રેશ જો અમે તે કામ રાખો, અને પડશે પછી અમે તેને ઠીક પડશે. હવે હું શું કરવા જઈ રહ્યો છું હું એક નવી નિયંત્રક બનાવવા જઈ રહી છું છે. અથવા ખરેખર, માફ. પ્રથમ હું એક નવું મોડેલ બનાવી છે. હું Post.php નામની એક નવી મોડલ બનાવવા પડશે અને અમે શું કરી રહ્યા છીએ અમે વર્ગ Model_Post તે કહી રહ્યા છીએ છે. કેટલાક બંધારણ પર પ્રકાશ મેળવો, અને તેથી હું કહે છે ત્યારે તે મૂળભૂત છે "ORM, વિસ્તરે છે" કેટલાક વધુ પદાર્થ આધારિત પ્રોગ્રામિંગ, જે કમનસીબે તમે ગાય્ઝ હજુ સુધી CS50 માં નથી શીખ્યા છે, પરંતુ તે ખૂબ પસંદ કરવા માટે સરળ છે. તે મને આ ORM પેકેજમાં આવે છે આ બધા વધારાની કાર્યક્ષમતા આપે છે અને તેથી હું વધારાની કાર્યો અને પ્લે whatnot એક ટોળું વિચાર તમે બીજા એક બીટ જોશો છે. અત્યારે ખરેખર મને જરૂર આ બધા વર્ગ બનાવવા છે. હું પણ કોઈ પણ કાર્ય અથવા કંઈપણ કરવા માટે જરૂર નથી, પણ હું ટેબલ રજૂ કરે છે એક વર્ગ બનાવી છે, અને હું આ ORM વર્ગ વિસ્તૃત છે કારણ કે, હું મુક્ત માટે વસ્તુઓ સમૂહ, જેથી હવે તમે કંઈપણ વધુ સુયોજિત કરવાની જરૂર નથી. અને હવે હું શું કરવા જઈ રહ્યો છું હું એક નવી નિયંત્રક બનાવવા જઈ રહી છું છે, જે હું blog.php નામ જાઉં છું, અને હું આપનું સ્વાગત નિયંત્રક પર નકલ જાઉં છું તેથી હું અમુક સામગ્રી retype કરવાની જરૂર નથી, અને હવે હું આ નામ બદલી હોય છે. હવે શું મને ખાતરી છે કે બહાર બધું કામ કરે છે બનાવવા માટે ચકાસવા માટે કરવા જાઉં છું, હું મારા ડેટાબેઝમાંથી પ્રથમ પોસ્ટ ગ્રેબ જાઉં છું અને સ્ક્રીન પર પોસ્ટ શરીર છાપો. શું હું પ્રથમ કરવા જાઉં છું હું પોસ્ટ્સ સાચવવા માટે જાઉં છું છે કે કરવા માટે ચલમાં તેથી શું અમે કરી રહ્યા છીએ છે - Kohana માં તમે શું પોસ્ટ પદાર્થ ગ્રેબ છે , તે પ્રકારની બોજારૂપ છે, પરંતુ તમે ORM કહેવાય વસ્તુ :: ફેક્ટરી કરી છે અને પછી તમે તમને જોઈતા મોડેલ નામે પસાર કરવા માટે, અને તે મોડલ રજૂ કરે છે ORM પદાર્થ આપે છે. અને પછી, જેમ હું, અમે ORM પદાર્થ વિસ્તારવા છે, જણાવ્યું હતું કે, અમે મુક્ત માટે આ તમામ પદ્ધતિઓ, જેથી ઉદાહરણ તરીકે, અમે કહેવાય આ નવી કાર્ય ", બધા શોધી" વિચાર જે આપોઆપ ડેટાબેઝમાં દરેક એક પોસ્ટ આપે છે, જે ખૂબ અનુકૂળ છે. અને હવે શરીરમાં હું પાછો જાઉં છું પ્રથમ પોસ્ટ અને તેના શરીરમાં જાય. અને અલબત્ત, હું એક પોસ્ટ બનાવવાની જરૂર છે, તેથી આપણે એક નવી પોસ્ટ દાખલ કરો. હું "બ્રાન્ડોન, મારા ખૂબ પ્રથમ પોસ્ટ." કહેવું પડશે ઓસમ. અને હવે અમે બ્લોગ્સ પર જાઓ રહ્યા છીએ બધા સારી રીતે કામ કરે છે અને જો - ઓહ, આ ફરીથી કેટલાક અન્ય મૂક ફાઇલ પરવાનગી બાબત છે. 1 સેકન્ડ પકડી. તે પ્રકારની વાહિયાત છે. ત્યાં અમે જાઓ. ઠીક છે. હું કે પરવાનગી સમસ્યા સુધારાઈ. તે અમુક ફાઈલો અને કેટલાક લોગ બનાવવા માટે પ્રયાસ કરી રહી છે, અને પરવાનગીઓ, ફરી, યોગ્ય રીતે સુયોજિત કરવામાં આવી હતી, તેથી હું તેને બનાવી તેથી તે ફાઈલો લખી શકાય તેવી અને એક્ઝેક્યુટેબલ હતા તેથી તે ખરેખર વસ્તુઓ માટે પ્રવેશ કરી શકે છે. હવે તે ", વર્ગ ORM મળ્યું નથી" મને અન્ય અપવાદ કહ્યું હતું, આપી દીધો છે હું અન્ય પગલું ભૂલી ગયા છો કારણ કે તે છે. તે ખૂબ ખરાબ છે. બુટસ્ટ્રેપ ફોલ્ડર ફાઈલમાં, અહીં આ મોડ્યુલો છે, તમે સક્ષમ અથવા અક્ષમ કરવા માટે કરી શકો છો. આ તમે ઉપયોગ કરવા પસંદ કરી શકો છો કે જે વિવિધ લક્ષણો એક ટોળું છે જેવું સરસ છે જે Kohana, અંદર. ઉદાહરણ તરીકે, તેઓ સત્તાધિકરણ મોડ્યુલ છે જે તમે વપરાશકર્તાઓને સત્તાધિકારીત માટે વાપરી શકો છો. તમે અમલ કરવા માંગો છો તેઓ કેશીંગ મોડ્યુલ છે અરજી કામ ઝડપી અને whatnot બનાવવા બેક કેશીંગ અમુક પ્રકારની. અમે ડેટાબેઝ અને ORM મોડ્યુલ સક્રિય કરવા માટે જરૂર છે, જેમ હું જણાવ્યું હતું કે, કારણ કે, અમે ચોક્કસપણે, ડેટાબેઝ ઉપયોગ કરી રહ્યાં છો અને અમે પણ ORM મોડ્યુલ સક્રિય કરવા માટે જરૂર છે, અમે સરસ છે જે વધારાની કાર્યક્ષમતા, છે કરવા માંગો છો છે. હું શું છે બધા, તે 2 લીટીઓ ટિપ્પણી ન કરો છે હું તાજું અને હવે જો, તે મને બીજા ભૂલ આપી હતી. તે "વર્ગ Model_Post મળ્યું નથી છે." હવે આ એક સારો હોય સમસ્યા છે. ચાલો જોવા. તે જાહેર કરો. ના પર ધરાવે છે. ઓહ, ડિયર. તે શોધવા માટે સક્ષમ નથી શા માટે મને ખબર નથી. કે ખરેખર વિચિત્ર છે. હું અહીં આ વર્ગ છે. ઓહ - હું હું હોય શકે છે. હું મૂક છું. હું PHP, ટેગ ઉમેરવા ભૂલી ગયા છો. કે શા માટે છે. હવે હું 1 ફેરફાર હું કર્યું છે કે પૂર્વવત્ છે. ઠીક છે. ત્યાં અમે જાઓ. કે ખરેખર કોઈ હતી. હું એક ઓપનિંગ PHP, ટેગ ન હતી. તમે જોઈ શકો છો પરંતુ, હવે તે યોગ્ય રીતે કામ કરી રહ્યા છે? અમે 1 પોસ્ટ છે. અમે પ્રથમ પોસ્ટ પકડીને, અને હવે અમે તેના શરીર છપાયેલ. સરસ. વિચિત્ર. કોઈપણ પ્રશ્ન છે અત્યાર સુધી? ના? કોઈપણ પ્રશ્ન છે? ઠીક છે, તેથી અમે ફક્ત ખૂબ જ મૂળભૂત, પોસ્ટ મોડેલ બનાવ્યું અને અમે પાછળથી કેટલાક કાર્યો ઉમેરો રહ્યા છીએ. અમે માન્યતા અને ગાળણ ઉમેરી શકો છો. માન્યતા એક વસ્તુઓ છે માળખા ખરેખર સારી, ખરેખર તમારા માટે હલ કે, અને હું તમને ગાય્ઝ તમારા CS50 Pset માટે આ કરી હતી લાગતું નથી, પરંતુ તમે તમારી અંતિમ પ્રોજેક્ટ માટે વેબ વિકાસ કરો તો, તમે કદાચ માન્યતા અમુક પ્રકારની કરવા માંગો છો જઈ રહ્યાં છો, જેમ ખાલી વપરાશકર્તા નામ કર્યા નથી, કદાચ ઓછામાં ઓછા કેટલાક લંબાઈ પાસવર્ડ કર્યા, તે જેવી વસ્તુઓ. અને તે પોતાને દ્વારા આ વસ્તુઓ અમલ ખરેખર બોજારૂપ છે અને ખૂબ ખૂબ દરેક એક વેબ ફ્રેમવર્ક તમારા માટે તે કરે છે અને તમે ખૂબ જ સ્વચ્છ રીતે તે કરી શકે છે. તમે સામાન્ય રીતે તે માન્યતા નિયમો વ્યક્ત જ્યાં અને મોડલ છે તે એક મોડેલ માન્ય હોય છે કે ન માન્ય છે કારણ કે. પરંતુ હવે માટે, અમે પછી ત્યાં સુધી કે મૂકી રહ્યા છીએ અને હવે અમે અન્ય ભાગ પર કામ કરવા માટે જઈ રહ્યાં છો, અને અમે નવા દ્રશ્ય માટે પ્રયત્ન કરો અને કરી રહ્યા છીએ કે તમામ પોસ્ટ્સ યાદી આપે છે. બધા પોસ્ટ્સ યાદી માટે નવી ક્રિયા કરવા માટેના જરૂરી પગલાંઓ બધા પોસ્ટ્સ યાદી ગ્રેબ છે અને પછી જુઓ મારફતે તમામ પોસ્ટ્સ યાદી રેન્ડર. અહીં, સદભાગ્યે પૂરતી, અમે પહેલેથી જ તમામ પોસ્ટ્સ પકડીને આ પ્રથમ વાક્ય મદદથી, બધા કાર્ય શોધી અને હવે અમે શું કરી રહ્યા છીએ જેથી દૂર છે હું સીધો પ્રતિભાવ શરીર સુયોજિત થઈ શબ્દમાળા પસાર, પરંતુ હવે હું એક દૃશ્ય વાપરવા માંગો દ્વારા, અને માત્ર આ કરી એક જુઓ અને વચ્ચે તફાવત એક દૃશ્ય સાથે હું એક સરસ, મોટા HTML ટેમ્પલેટ કરી શકે છે, અને હું શું કરી શકો છો તે ચોક્કસ ચલો પસાર છે અને પછી જુઓ આપોઆપ તેના નમૂના રચના છે તે ચલો વાપરી રહ્યા છે. શું હું કરીશ, હું એક નવી દૃશ્ય બનાવવા પડશે છે અને હું ", બ્લોગ / અનુક્રમણિકા" જેવા દેખાવ કંઈક નામ પડશે અને હું મૂળભૂત રીતે આ બાંધવા જાઉં છું - ઓહ, હું શું લખું છું? મારા મગજ બીજે ક્યાંય છે. હું દેખાવ માટે ચલ પોસ્ટ્સ બાંધવા જાઉં છું તેથી કે જે રીતે જુઓ આ પોસ્ટ ચલ વપરાશ હોય છે. અને તેથી હવે હું આ જુઓ બનાવવાની જરૂર છે, અહીં અમે "રેટિંગ" કહેવાય ફોલ્ડર છે અને પ્રથમ, હું કહેવાય હેઠળ નવું ફોલ્ડર બનાવવા જઈ રહી છું "બ્લોગ." આ સરસ છે. આ રીતે અમે અમારા વિચારો માટે એક સરસ વંશવેલો કરી શકે છે. અને પછી હું કહેવાય ત્યાં બીજી ફાઇલ બનાવવા જઈ રહી છું "index.php." ઓસમ. ખરેખર, અહીં તેમને બંને હોય છે. એક દૃશ્ય ફાઈલ બનાવી રહ્યા છે કદાચ આ બધી સરળ ભાગ છે, અને આ કદાચ તમે પહેલેથી જ પરિચિત છો જેવી છે. અમે ખરેખર સરળ કંઈક કરી રહ્યા છીએ કહેતા શરૂ "બ્લોગ પોસ્ટ્સ મારી યાદી." તો પછી અમે દ્વારા જઈ શકે છે, અને અમે પોસ્ટ્સ એરે મારફતે ફરી વળવું કરી શકો છો, દરેક એક પોસ્ટ ગ્રેબ અને કંઈક કહે છે - કદાચ એક લીટી ઉમેરો અને પછી લેખક અને શરીર છાપે. તે અત્યાર સુધી અર્થમાં છે? અને તે કામ કરે છે જુઓ. કંઈ થયું. હું શા માટે આશ્ચર્ય. ઓહ, હું 1 પગલું નહીં. મને ખૂબ જ કોઈ. હું જુઓ બનાવવામાં આવે છે, પરંતુ હું જવાબ તરીકે જુઓ સુયોજિત કરી નથી, તેથી તમે 1 વધુ વસ્તુ કરવા માટે હોય છે. તમે "આ પ્રતિભાવ શરીર 'છે, અને દેખાવ હોય તે સેટ હોય છે. ત્યાં અમે જાઓ. અમે અમારા શીર્ષક છે, અને પછી અમે પોસ્ટ છે, અને માત્ર કિક્સ માટે, માતાનો બીજી પોસ્ટ દાખલ કરો તેથી અમે યાદી જોઈ શકો છો. અને આ 2 પોસ્ટ્સ દાખલ કરો, અને હવે હું પાનું તાજું, અમે અહીં આ બધા પોસ્ટ્સ જુઓ. કે અત્યાર સુધી અર્થમાં છે? અરે વાહ, એક પ્રશ્ન? ઠીક છે, ઓહ. તમે જોઈ શકો છો, અમે બધા આ કોડ અલગ કરવા માટે સક્ષમ થયા છો વિવિધ ભાગોમાં, અને પછી તમે તે જોવા કોડ સાથે સૌથી વધુ સ્પષ્ટ છે જોઈ શકે છે. આ દૃશ્ય રજૂ કરે છે અહીં ફાઇલ, તે માત્ર માહિતી પ્રદર્શિત કરવા, માહિતી રજૂ વિશે ધ્યાન આપતા. તે માહિતી અમુક પ્રકારની પસાર નહીં, અને તે કરે છે બધા માત્ર તમારા માટે તે દર્શાવે છે. તમારો કોડ તમામ અન્ય ભાગોમાં, તમે તે કોઈપણ વિશે ચિંતા કરવાની જરૂર નથી, અને એ જ રીતે, તમારા દેખાવ કોડ વિષે કશું ચિંતા કરવાની જરૂર નથી આ માહિતીનો ઉપયોગ કરવા અને તેથી અને તેથી આગળ, કેવી રીતે જે ખરેખર સારા છે અને તમારો કોડ ઘણા બધા નિભાવવા યોગ્ય બનાવે છે. જેમ હું જણાવ્યું હતું, રેટિંગ, તેઓ કે જે ગતિશીલ છો તે 1 ફાઇલ નથી, પણ તે અલગ અલગ મત ઉત્પન્ન કરશે તમે ખરેખર પાસ ચલો પર આધારિત છે, અને વધુમાં, વિવિધ મદદગાર વિધેયો ઘણો છે તમે, તમે ઝડપથી તમારો કોડ લખવા માટે મદદ કરવા માટે ઉપયોગ કરી શકો છો હું માત્ર એક બીજા માં તમને બતાવીશું છે. અરે વાહ. [વિદ્યાર્થી] તેથી Rs 0 હક, એક નિયંત્રક છે? તે બીજી વસ્તુ. આ પ્રશ્ન Rs 0 એક નિયંત્રક છે? Rs 0 હું અહીં બનાવવામાં ચલ છે. હું પ્રથમ એક દૃશ્ય બનાવી. હું કેટલાક ચલ નોંધાયો આઈડી. પછી હું આ કાર્ય માં પસાર પ્રત્યુત્તરની શરીર તરીકે સેટ કરો. કે અર્થમાં છે? [વિદ્યાર્થી] તેથી જુઓ :: ફેક્ટરી છે, એક વર્ગ જેવા દેખાવ છે અથવા લાઇબ્રેરી [અશ્રાવ્ય] ફેક્ટરી કાર્ય? તો પ્રશ્ન એ છે, જે જુઓ :: ફેક્ટરી કાર્ય છે અને મૂળભૂત રીતે આ અનિવાર્યપણે કેટલાક વધુ પદાર્થ આધારિત પ્રોગ્રામિંગ છે. ", ફેક્ટરી" જુઓ દેખાવ વર્ગ છે, અને તે કહેવાય પદ્ધતિ છે અને તે નામ આપવામાં આવ્યું છે કે પદાર્થ ગ્રેબ એક રીત છે "બ્લોગ / ઇન્ડેક્સ." અને તે કેટલાક વધુ પદાર્થ આધારિત પ્રોગ્રામિંગ સામગ્રી છે હું ખૂબ જ અહીં જાય જઈ રહ્યો છું કે. હવે દેખીતી રીતે, અમે નવી પોસ્ટ્સ બનાવવા માંગો છો, પરંતુ અમે એક ડેટાબેઝમાં તે કરવા માંગો છો નથી, તેથી અમે એક નવી પોસ્ટ બનાવવા માટે નવી ક્રિયા બનાવી રહ્યા છીએ, અને અમે હોય તો સામગ્રી ઘણો છે. અમે કરી રહ્યા છીએ પ્રથમ વસ્તુ - માતાનો આ વસ્તુઓ એક પછી એક હલ કરીએ. અમે કરીશ પ્રથમ વસ્તુ અમે એક ફોર્મ બનાવવા માટે મળી છે છે એક નવી પોસ્ટ દાખલ માટે, પણ હું પણ, પ્રથમ નવી ક્રિયા ઉમેરો જાઉં છું જેથી નવી ક્રિયા ઉમેરીને તરીકે સરળ છે તમારી કંટ્રોલર સાથે નવા કાર્ય ઉમેરી રહ્યા છે, અને હવે હું ખૂબ જ મૂળભૂત કંઈક કરવા જાઉં છું ફક્ત આ જુઓ ગ્રેબ અને તેને પોસ્ટ, તમારા માટે જ તે દર્શાવે છે. અને પછી હવે હું નવા દ્રશ્ય ફાઈલ બનાવવા જઈ રહી છું, અને હું અમુક સામગ્રી લખવાનું શરૂ જાઉં છું. શું Kohana વિશે સારું છે કે તેઓ અલગ અલગ મદદગાર વિધેયો ઘણો પૂરી પાડે છે તમે વધુ સરળતાથી જુઓ કોડ લખવા માટે તે મદદગાર કાર્યો અથવા મદદગાર મોડ્યુલો અને 1 આસપાસ સ્વરૂપો લખી રહ્યો છે. સ્વરૂપો લખવા માટે, હું ખરેખર સીધી કોઈપણ HTML જાતે લખવી પડતી નથી. તમે ગાય્ઝ HTML ફોર્મ લખ્યું છે. તમે તેને ખરેખર, ખરેખર પીડાદાયક અને સ્વરૂપો લખી કષ્ટદાયક હોઈ શકે છે કેવી રીતે ખબર. તે, તેથી સદભાગ્યે, મજા નથી અમે મૂળભૂત રીતે Kohana માતાનો મદદથી ફોર્મ લખી શકો છો અમારા માટે તે કરવા મદદગાર કાર્યો રચે છે. અમે મૂળભૂત રીતે અમે દરેક એક કારણ એ ક્ષેત્રો હોય રહ્યા છીએ તેથી લેખકો માટે એક અને શરીર માટે છે. અમે લેબલ હોય રહ્યા છીએ, અને અમે ઇનપુટ હોય રહ્યા છીએ. અને પછી છેવટે, અમે રજૂઆત હોય રહ્યા છીએ. અને તમે જોઈ શકો છો, આ લખવા માટે જ સ્વચ્છ છે પ્રકારની જે સરસ છે કે જે બધી અવ્યવસ્થિત એચટીએમએલ, કરતાં. મંજૂર છે, તે કરતાં તે ક્લીનર છે કે અન્ય વેબ માળખા છે, પરંતુ ઓછામાં ઓછા આ એચટીએમએલ જાતે લખી કરતાં વધુ સારી છે. અદ્ભુત છે, તેથી આ તમે જોઈ છે. એટલે કે, અવ્યવસ્થિત પ્રકારની છે જેથી હું ત્યાં એક પંક્તિ વિરામ ઉમેરો જાઉં છું તે થોડો NICER જુઓ બનાવે છે. ઠીક છે, અલબત્ત, તે હજુ પણ ખરેખર, ખરેખર ખરાબ લાગે છે, પરંતુ અમે ફક્ત ધ્યાન કેન્દ્રિત કરી રહ્યા છીએ સૌંદર્ય શાસ્ત્ર હવે નથી અને માટે કાર્યક્ષમતા પર. બધું કરવા માટે કોઈ સમય. તમે જોઈ શકો છો અને, હવે અમે એક સુપર મૂળભૂત સ્વરૂપ છે, જે પ્રકારની સરસ છે. હું એમ કહીશ આ કોડ તમારી જાતને રચના એક HTML લખવાનો પ્રયાસ કરતાં ક્લીનર છે, તેથી કે સારું છે. શું છે? હવે અમે ક્રિયા સાથે વસ્તુઓ કરવા માટે જરૂર છે. તમે HTML સ્વરૂપો લખી સામાન્ય છે, તમે તેને ફોર્મ રજૂ કરવા રહ્યું છે તે કહેવું છે. મોટા ભાગનાં વેબ માળખા માં મૂળભૂત રીતે, , તે ચોક્કસ જ URL પર જમા છે, તેથી આ વસ્તુ છે તમને / બ્લોગ / નવું, એક વિચાર વિનંતી મોકલી જો તે શું તમે ફોર્મ પ્રદર્શિત કરીશું, પરંતુ તમે પોસ્ટ વિનંતી મોકલી જો / બ્લોગ / ડેટા સાથે નવું, તે ખરેખર છે કે પોસ્ટ બચાવવા પ્રયત્ન કરીશું અને તેની સાથે કંઈક. અમે શું રહ્યા છીએ છે મૂળભૂત રીતે બધા અમે તેને પોસ્ટ વિનંતી અથવા વિચાર વિનંતી છે કે કેમ તેની તપાસ કરી છે તમે સુયોજિત કરી શકો છો પોસ્ટ ચલો શું જોવાનું હોય છે. પોસ્ટ ચલ સુયોજિત થયેલ હોય, તો પછી અમે પ્રયાસ અને એક નવી પોસ્ટ બનાવી રહ્યા છીએ. ફરીથી, અમે હમણાં જ આવું, અને તે એક નવી પોસ્ટ બનાવે છે, અને અમે શાબ્દિક રહ્યા છીએ આ જેવા તેના ક્ષેત્રો સુયોજિત કરે છે, અને પછી અમે તેને સંગ્રહો રહ્યા છીએ. અને પછી હું પુનઃદિશામાન જાઉં છું ઇન્ડેક્સ પેજમાં તેથી તેઓ પોસ્ટ્સ અમારી યાદી ફરીથી જોઈ શકે છે. ચાલો તેને કરવાનો પ્રયાસ કરો. હું ", બ્રેન્ડોન", કહેવું પડશે અને, પછી પોસ્ટ સબમિટ, અને બધા સારી રીતે જાય તો તમે જોઈ શકો છો, તે ઇન્ડેક્સ પેજમાં મને રીડાયરેક્ટ હું નીચે સ્ક્રોલ, તો અમે એક નવી દાખલ પોસ્ટ છે. યે! અરે વાહ, પ્રશ્ન. [વિદ્યાર્થી] જો તમે ચોક્કસ જ વાત પ્રવેશ કર્યો હોય તમે પહેલાં દાખલ થયો હતો? તે ખાતરી કરો કે તમે ડુપ્લિકેટ નથી ખાતરી કરવા માટે ચકાસણી કરે છે એ જ રજૂઆત? મૂળભૂત રહો, ના, કારણ કે મૂળભૂત રીતે - શું તમે ફોર્મ માં ચોક્કસ જ માહિતી દાખલ જો માફ કરશો, પ્રશ્ન છે અને, તે તમે નકલી પદાર્થ દાખલ કરવા માટે પરવાનગી આપે છે, કે રજૂ એક આવશ્યકપણે, પ્રવેશ ડુપ્લિકેટ? અત્યારે, હા, તો તે તમને તે કરવા માટે પરવાનગી આપે છે, ડેટાબેઝ માં તે સંપૂર્ણપણે ડુપ્લિકેટ પંક્તિઓ હોય એકદમ યોગ્ય છે, કારણ કે કે ચિંતાનો વિષય છે, તો પછી તમે ઉદાહરણ તરીકે, માન્યતા ઉમેરી શકો છો, આ પહેલેથી જ અસ્તિત્વમાં છે કે જે કંઈક તરીકે બરાબર એ જ છે તેની ખાતરી કરવા માટે, પછી તેને અમાન્ય પદાર્થ છે કે જે કહે છે, અને પછી તમે પણ તમારા ભૂલ સંદેશો સ્પષ્ટ કરી શકો છો "આ પહેલેથી હાજર છે, કારણ કે અમાન્ય" કે કંઈક છે અને કહે છે. પરંતુ આ કિસ્સામાં, હું હમણાં જ નકલી કંઈક બનાવી શકે છે. હવે આપણે પ્રયાસ કરો અને કેટલાક માન્યતા ઉમેરો. આ સાથે સમસ્યા એ હમણાં કે હું શાબ્દિક એક સંપૂર્ણપણે ખાલી પોસ્ટ સબમિટ કરી શકે છે. હું હમણાં આ બટન ક્લિક કરી શકો છો, અને ત્યાં અમે જાઓ. તમે ખરેખર તેને જોઈ, પરંતુ શકે આ અહીં વધારે રેખા હું શાબ્દિક એક નવી પોસ્ટ છે સૂચવે છે. તે માત્ર ખાલી લેખક અને ખાલી શરીર છે, અને અમે લોકો તે કરવા માટે પરવાનગી આપવા માંગો છો નથી. માન્યતા સાઇન આવે છે આ છે હું મારા મોડલ પદાર્થ પર જઈ શકો છો, અને હવે હું સ્પષ્ટ કરે છે કે એક નવી કાર્ય ઉમેરી શકો છો હું આ મોડેલ ઉમેરો જોઈએ તે માન્યતા નિયમો તે માન્ય છે કે નહીં તેની ખાતરી કરવા માટે કે સ્પષ્ટ કરવા માટે શું તે માન્ય પોસ્ટ કરી અર્થ છે? અને હું તે જ માન્ય પોસ્ટ કહે છે કરવા માંગો છો લેખક અને શરીર બંને ખાલી નથી, અને આ તમને Kohana માં કેવી રીતે કરવું તે છે. તમે "નિયમો" નામની એક નવી કાર્ય બનાવવા અને પછી તમે મૂળભૂત એક સમૂહનો એરે પાછા કે આ પદાર્થ માટે માન્યતા નિયમો વ્યાખ્યાયિત કરે છે. અમે એરે પરત ચાલી રહ્યું છે, અને પછી અમે શું કરી રહ્યા છીએ છે રહ્યાં છો કહે છે, "લેખક," તે એક એરે માટે જાય છે, જે કહેવાય અન્ય એરે જાય "ખાલી નથી." અને પછી હું કહેવા જાઉં છું "શરીર." આ માટે ઠીક છે, અને આ માટે વાક્યરચના અને માળખું થોડી કષ્ટદાયક અને થોડી જટિલ દેખાશે. તમારી પાસે આ દસ્તાવેજ વાંચી તો, તે બહાર આકૃતિ ખૂબ સરળ છે પરંતુ અનિવાર્યપણે આ તમને સ્પષ્ટ કરવા માટે શું કરવાની જરૂર છે કેટલાક માન્યતા નિયમો, અને વિવિધ નિયમો ઘણો છે તમે કહી નિયમો ઉમેરી શકો છો જેમ Kohana, મફત પૂરી પાડશે કે તે ઓછામાં ઓછા આ લંબાઈ હોવા જ જોઈએ. કદાચ તે આંકડાકીય પ્રયત્ન છે. કદાચ તે આલ્ફા આંકડાકીય પ્રયત્ન છે. કદાચ તે એમ છે અને તેથી આગળ, વધુમાં વધુ આ લંબાઈ પ્રયત્ન છે. Kohana તમારા માટે પૂરી પાડે છે કે અલગ નિયમો ઘણો હોય છે, અને તમે દસ્તા જોવા, તેમની વેબસાઈટ પર જઈ શકો છો અને તમે શું કરી શકો છો કે જે બધા અલગ વસ્તુઓ જોઈ શકો છો. પરંતુ આ હું શું કરવું છે બધા છે, અને હવે આપણે શું થાય છે તે જુઓ હું એક ખાલી પોસ્ટ સબમિટ છો. શું ચાલી રહ્યું છે? ઓહ, ના, હું એક ભૂલ છે. હું એક માન્યતા અપવાદ વિશે. ઠીક છે, તે સારી છે. તે મારા મોડલ અમાન્ય છે મને કહ્યું હતું કે, પણ હું એક અપવાદ પ્રદર્શિત કરવા નથી માંગતા મારા વપરાશકર્તાઓ માટે તેઓ અધિકાર અમાન્ય કંઈક સબમિટ પ્રયત્ન કરો ત્યારે? હું તેમને મૈત્રીભર્યું ભૂલ સંદેશો અમુક પ્રકારની આપવા માંગો છો કંઈક ખોટું થાય છે. અમે શું કરી રહ્યા છીએ અમે જઈ રહ્યાં છો છે એક પ્રયાસ કરો કેચ લૂપ બધું લપેટી. ખરેખર, હું આ પણ જો તમે હજુ સુધી નથી શીખી ગયા છે કંઈક છે CS50 માં, કારણ કે સી, પ્રોગ્રામીંગ ભાષા સી, લગભગ દરેક એક અન્ય ભાષા અપવાદો હોય છે, પરંતુ નથી , તેથી ખરેખર, ખરેખર થોડા સમય માટે અપવાદો છે અપવાદ કોડ એક ભાગ કરી શકો છો કે જે કંઈક છે કંઈક ખોટું થાય છે, અપવાદ ફેંકવું અપ પછી પણ કદાચ કોડ કેટલાક અન્ય ભાગ વધારે કે અપવાદ પકડી અને તેની સાથે કંઈક કરી શકો છો. ઉદાહરણ તરીકે, આ કિસ્સામાં, એક મોડેલ સંગ્રહી રહ્યા છે કે કોડ ના ભાગ, "ઠીક છે, આ મોડેલ અમાન્ય છે" તે મોડલ માન્ય છે, અને તે કહે છે, તો તે એક અપવાદ ફેંકવું ચાલી રહ્યું છે, અને આ માટે સમકક્ષ પ્રકારની છે સી જો તમે -1 અથવા તે કંઈક પાછા શકે છે. અને પછી મારા માટે, આ કાર્ય, મારી કોડ એક ઉચ્ચ સ્તર પર, હું અપવાદ પ્રયાસ કરો અને પકડી શકે છે અને મૂળભૂત "ઠીક છે, હું અપવાદ પકડી, તો હું શું કરવા જઈ રહ્યો છું?" કહે છે, અથવા હું કે અપવાદ પકડી અને કોઈને વધારે ન દો પસંદ કરી શકો છો અપવાદ પકડી, અથવા કોઈએ તેને કેચ છે, પછી સમગ્ર કાર્યક્રમ, ક્રેશ છે અને કહે છે "કંઈક ખોટું થયું હતું, અને હું તેને નિયંત્રિત કરી શકે છે." પરંતુ અમે શું, તમે એક પ્રયાસ કરો બ્લોકમાં કોડ એક ભાગ લપેટી છે અને પછી તમે પણ, એક કેચ બ્લોક કહેવાય છે તેની ઉમેરો જે પ્રયાસ કરો અને આવી શકે છે કે અપવાદો કેચ કરશે કે કોડ શાળા સ્થાન જેવું છે. અને તેથી હું આ ખાસ અપવાદ પકડી જો અથવા લશ્કરી સેવા માટે અશક્ત નીવડેલાને નોકરીમાંથી આપેલી વિદાય અપવાદ, તો પછી હું શું કરવા જાઉં છું છે હું ભૂલો સુયોજિત જાઉં છું - હું કે હું તે કરી કેવી રીતે લાગે છે - અને હું કેટલાક પદાર્થ ના ભૂલો સુયોજિત જાઉં છું. તે આ અપવાદ બનાવ્યા અને પછી જો હું શું કરવા જઈ રહ્યો છું કે, પુનઃદિશામાન ન થાય તો તે પુનઃદિશામાન થઈ રહ્યું છે, અને નથી તે જો બ્લોગ બહાર આવી રહ્યું છે અને હું કરવા માંગો છો માંગો છો છે, કે જે આ બ્લોગ / નવી નહીં. એક ભૂલ આવી છે, પછી હું ફોર્મ પર પાછા જાઓ કરવા માંગો છો અને તે ભૂલો કરે છે. હવે હું શું કરવા માંગો છો હું તે ભૂલો પાસ કરવા માંગો છો છે આ કરો. ઠીક છે, હું અહીં મત ધરાવે છે લાગે અને મૂળભૂત હું તેઓ હાજર હોય તે ભૂલો પ્રદર્શિત કરવા માંગો છો. હું તે માટે એચટીએમએલ લખો પહેલાં, હું ખરેખર ઝડપથી જઈ રહ્યો છું આ ભૂલો બંધારણ ચલ દેખાવ ગમે તે તમને બતાવવા, અને આ સામાન્ય રીતે એક સારો પ્રયાસ છે. વખત ઘણાં તમે પાછા કેટલાક પદ્ધતિ માંથી કંઈક વિચાર વેબ માળખામાં અમુક કાર્ય, અને તમે ચલ શું લાગે ખબર નથી જેથી તમે તેની સાથે કામ કરવા માટે કેવી રીતે ખબર નથી. હું મૂળભૂત રીતે તે છાપે પ્રિન્ટ આર પદ્ધતિ વાપરવા માટે જાઉં છું. તમે જોઈ શકો છો અને, તે, તે એક સહયોગી એરે છે મને કહે છે અને જો તમે આ શબ્દમાળા માટે કી, લેખક, પોઇન્ટ છે લેખક ખાલી હોય છે, અને અન્ય કી, શરીર, ન કર અન્ય શબ્દમાળા, શરીર પોઇન્ટ ખાલી ન હોવું જોઈએ. હું સરસ, ઠીક છે, જેવી છું. પછી હું એરે મારફતે ફરી વળવું અને દરેક એક સંદેશ છાપી શકો છો. તે સંદેશાઓ એક ટોળું સાથે એક સમૂહનો એરે જેવી મૂળભૂત છે. હું કરવા જાઉં છું ", તો ભૂલો" છે અને હું એક unordered યાદી બનાવવા જઈ રહી છું, અને હું તમામ ભૂલો દ્વારા ભારપૂર્વક કહેવું છે જાઉં છું. અને આ છે, અને હવે હું ફરીથી આ સબમિટ પ્રયાસ જાઉં છું અને અમે વિચાર છે તે જોવા દો. હવે અમે ભૂલો આ સરસ યાદી મેળવવા માટે, અને, આ હજુ પણ ખૂબ નીચ છે, પરંતુ આ દેખીતી રીતે સરસ જોવા ફોર્મેટ કરી શકાય છે પરંતુ મૂળભૂત વિચાર, માત્ર કોડના થોડા રેખાઓ છે અમે અમારા મોડેલ માન્ય કરવા સમર્થ હતા, ચોક્કસ ક્ષેત્રો ખાલી ન હતા કે નહીં તેની ખાતરી, અને કંઈક ખોટું થયું હોય, તો પછી ભૂલ સંદેશો અમુક પ્રકારની પાછા હું પછી વપરાશકર્તા માટે પાછા રજૂ કરી શકે છે. તમે પણ તમારા માન્યતા કસ્ટમાઇઝ કરી શકો છો તમે ખરેખર ભૂલ સંદેશો છે, આથી કે કે તમારી અરજી અથવા તે કંઈક વધુ ચોક્કસ છે. જે સામાન્ય રીતે વૈવિધ્યપૂર્ણ છે. દુર્ભાગ્યે, અમે સમય બહાર ચલાવી રહ્યા છો તેથી હું અહીં જીવંત કોડિંગ સત્ર કાપી હોય જાઉં છું. હું તમારા માટે નિદર્શન કરવા માંગો છો તે અન્ય લક્ષણો એક ટોળું છે આ ઉદાહરણમાં. ઉદાહરણ તરીકે, તમે તમારી સાઇટ પર નમૂનાઓ ઉમેરી શકો છો, તેથી કદાચ તમે અરજી કરવા ઇચ્છતા કે HTML કોડ અમુક પ્રકારની છે તમારી સાઇટ દરેક એક પાનાં પર, અને તેની જગ્યાએ પેસ્ટ કે દરેક એક દૃશ્ય ફાઇલમાં તમે ચોક્કસપણે એક ખરાબ વ્યવહાર હશે, જે છે તમે સામાન્ય રીતે આ નમૂનાઓ વ્યાખ્યાયિત કરી શકો છો, અને પછી તમારા નિયંત્રક "ઠીક છે, હું આ નમૂનો ઉપયોગ કરું છું." કહે છે, "બધા મારા વિચારો આ નમૂનાનો ઉપયોગ છે." અને હું પણ તમને બતાવી કરવા માંગો છો એક છેલ્લા વસ્તુ અમે ક્રોસ સાઇટ સ્ક્રિપ્ટિંગ છે સમય નથી કે અને મૂળભૂત હું તમને ગાય્ઝ કદાચ CS50 માં જોવા મળે છે લાગે છે - હું ડેવિડ Malan કદાચ તમે સામાન્ય રીતે પિચકારીની કરી શકો છો તે વિશે વાત કરી લાગે છે માં જાવાસ્ક્રિપ્ટ કોડ - તમે આ વિશે વાત કરી છે? કદાચ? કદાચ નથી? પરંતુ વખત ઘણો તમે દૂષિત JavaScript કોડ પિચકારીની કરી શકો છો કોઈની ડેટાબેઝ માં, અને તેઓ યોગ્ય રીતે તેનો બચાવ ન હોય તો, પછી જે ફરીથી વપરાશકર્તા માટે કે માહિતી પ્રસ્તુત છે, પછી તે તમને શું કરવા માંગો છો નથી રેન્ડમ JavaScript કોડ અમુક પ્રકારની ચલાવી શકો છો, અને હું તમને Kohana અંદર કરવા માંગો છો કેવી રીતે દર્શાવવા માટે થઇ રહ્યા હતા. તે વાસ્તવમાં ખરેખર, ખરેખર સરળ છે. હું શાબ્દિક 2 સેકન્ડોમાં હમણાં તે કરી શકે છે. તમે શું છે બધા મૂળભૂત રીતે આ બધી વસ્તુઓ લપેટી છે આ વસ્તુ માં HTML કંપનીઓ કરે છે. અને તે આપોઆપ યોગ્ય રીતે બધા અક્ષરો બચાવ થશે અને તમે આ સમસ્યા નથી તેની ખાતરી કરો. [વિદ્યાર્થી] તમે ખોટી રીતે પ્રથમ ટેસ્ટ જોડણી. [બ્રાન્ડોન લિયુ] અરે, ઓહ. ઠીક છે, કે હું આજે તમારી સાથે શેર કરો સર્વસ્વ છે. આ સ્લાઇડ્સ પોસ્ટ કરી રહ્યા છે, પરંતુ આ સામાન્ય છે માત્ર સાધનો તમે ખરેખર Kohana સાથે પ્રારંભ કરવાની જરૂર કરીશું. તમે વેબસાઇટ પર જઈ શકે છે. તેઓ એક વપરાશકર્તા માર્ગદર્શિકા છે, અને તેઓ પણ એક API સંશોધક છે. અમે તમારા માટે તેઓ તમામ વિવિધ કાર્યો અને મદદગાર કાર્યો શોધખોળ કરી શકો છો. તેઓ સામાન્ય રીતે વેબસાઇટ પર પૂરતી માહિતી તમે પ્રારંભ કરવા માટે અને Kohana સાથે જઈને વિચાર ઉપયોગ કરી શકો છો. કે ઘણા ટ્યુટોરિયલ્સ બહાર, Kohana માટે, મને લાગે છે, ત્યાં નથી શું તેઓ અહીં વેબસાઈટ પર હોય છે, તેથી આ કદાચ તમારા શ્રેષ્ઠ બીઇટી છે. પરંતુ તમે વેબ ફ્રેમવર્ક સાથે જવા માંગો છો તો અને તમે નવી ભાષા પસંદ હોય છે કરવા માંગો છો નથી, અને તમે પ્રમાણમાં હળવા છે અને એક સરળ શિક્ષણ વળાંક છે કે કંઈક કરવા માંગો છો હું ચોક્કસપણે Kohana એવું સુચન કરશે. કે કદાચ તે માટે શ્રેષ્ઠ તક છે. અમે રેલ્સ પર રૂબી ઉપયોગ કરતા હતા જો રમૂજી વસ્તુ છે, જોકે, છે, અમે આપણે શું માત્ર હતી નકલ કરી શકે છે અને કદાચ 3 હેઠળ મિનિટમાં વધુ. કોઈ મજાક, પરંતુ રેલ્સ પર રૂબી શીખવાની ઘણો સમય લે છે તે Kohana શીખવા માટે લે છે તેના કરતાં. તે તમને જાણવા પસંદ કરો માંગો છો તેના પર મૂળભૂત રીતે તમારી પસંદગી છે પરંતુ તમે અને ઝડપથી ચલાવવા માટે કરવા માંગો છો, Kohana ચોક્કસપણે ખૂબ જ સારી પસંદગી છે. અમે અંત કોઈપણ છેલ્લા પ્રશ્નો પહેલાં? હા. [વિદ્યાર્થી] કેવી રીતે અમે તે સંકલિત કરશે તમે સૂચના કરવામાં આવી હતી જ્યારે તમે ઉપયોગ કરી રહ્યા હતા જેવા સીએસએસ ફ્રેમવર્ક છે? તો પ્રશ્ન એ છે કે કેવી રીતે અમે એક સીએસએસ ફ્રેમવર્ક સાથે સંકલિત કરશે? આપણે કદાચ શું કરશે અમે કદાચ સમાવેશ થાય છે અમે અમારી તમામ સીએસએસ ફાઈલો ડમ્પ કરશે નવું ફોલ્ડર, અને પછી અમે એક નવા નમૂના ઉમેરવા માંગો છો. નમૂના અમે તે સીએસએસ ફાઈલો સમાવેશ છો તેઓ દરેક એક પાનાં પર સંદર્ભ કરી રહ્યાં છો તેની ખાતરી કરવા માટે, અને પછી તમે ખરેખર એચટીએમએલ લખે છે, ત્યારે તમે માત્ર યોગ્ય વર્ગો અને whatnot ઉમેરો અને ઉદાહરણ તરીકે, જ્યારે તમે ફોર્મ કંઈક ઉપયોગ કરી રહ્યાં છો મદદગાર કાર્ય, તમે પછીથી વધુ પરિમાણો ઉમેરી શકો છો તમને વિવિધ વસ્તુઓ સાથે જોડવા માટેની શું કરવા માંગો છો વર્ગો સ્પષ્ટ કરવા માટે તેથી તેઓ યોગ્ય રીતે શૈલી છે, અને તે તમે જાઓ કેવી રીતે મૂળભૂત છે. કોઈપણ અન્ય પ્રશ્નો છે? ઓસમ. તમારા સમય માટે આભાર, અને આગામી માટે આભાર. હું ખૂબ ખૂબ બીજું ઉમેરો જવા ન હતી પરંતુ 1 ખરેખર ઝડપી વસ્તુ અમે એક લિંક નથી છે આ ફોર્મ. ખરેખર મૂક. ચાલો એક ઉમેરો - વાસ્તવમાં મતે, બ્લોગ, અનુક્રમણિકા, નવા પેજમાં જાય કે લિંક ઉમેરો ખરેખર ઝડપથી ચાલો, અમે એક નવી પોસ્ટ દાખલ કરી શકો છો કે જ્યાં પાનું. અમે આ કરવા જઇ રહ્યા છો. શું સારું છે એચટીએમએલ મદદગાર કાર્યો છે આ સમગ્ર જૂથ છે છે તમારા માટે અલગ વસ્તુઓ છે, તેથી જો તમે પહેલાથી જ કંપનીઓ જે જોયું "એન્કર" અહીં કામ, પરંતુ તેઓ પણ કહેવાય કાર્ય છે તમે બ્લોગ / નવી લખો શકે છે અને "પોસ્ટ નવા બ્લોગ." કહે છે, અને તે તમારા માટે તે લિંક રચના કરશે અને આ કરવા માટે ખરેખર તુચ્છ લાગે છે, પરંતુ આ સરસ છે તમે 1 ડોમેન બીજા તમારી વેબસાઇટ ખસેડવાની છે કે ધારો છે. અને તમે માત્ર URL ને તમારી જાતને બહાર લખ્યું તો, પછી તમે બધા URL બદલી હશે. અથવા કદાચ તમે બીજા subfolder માટે 1 subfolder માંથી ખસેડવામાં આવ્યા છે. તમે તે બધા URL ને તમારી જાતને બદલી હશે અને તે કોઈ મજા છે. તમે અહીં આ એન્કર ઉપયોગ કરી શકો છો અને તમે ડોમેન અથવા subfolder ઉપસર્ગ બદલી શકો છો , એક વખત રૂપરેખાંકન ફાઈલમાં અને, પછી તે કે જે દરેક જગ્યાએ લાગુ પડે છે, અને આ ફરીથી, છે એક મહાન ઉદાહરણ તમારો કોડ બહાર સૂકવણી, તમારા પુનરાવર્તન નથી. તમે તમારી જાતને પુનરાવર્તન કરી રહ્યાં છો ત્યાં, આનો પ્રયાસ કરો અને રૂપરેખાંકન ફાઈલની અમુક પ્રકારની કાઢવા અથવા વિવિધ કામ કરવા માટે અને તે તમારા માટે કે હેન્ડલ છે. અને હું તમને બતાવવા માગે છે ખૂબ જ છેલ્લા બાબત હતી અમે આ પોસ્ટ પર પાછા છો, અને હું કેટલાક ખરેખર લાંબા નિબંધ બનેલા હતી ધારી, પરંતુ હું મારા લેખક સમાવેશ થાય છે ભૂલી ગયા છો. હવે હું "સબમિટ, પોસ્ટ" ક્લિક કરો ત્યારે હું માત્ર બધું ગુમાવી હતી. ના! ખરેખર ઉદાસી. તેથી તમે કેવી રીતે સાથે કામ પાર કરી શકું? આ અમે શું છે. અમે શું આ ઇનપુટ અને લખાણ વિસ્તારમાં કાર્યો માટે અહીં છે, અમે બીજા પરિમાણ, કે બીજા પરિમાણ પછી કિંમત સમાવેશ થાય છે, જો જો આ ક્ષેત્રમાં શરૂઆતમાં સાથે રચવા માટે ચાલે છે તે કરી રહ્યું છે. અમે શું કરી શકે છે અમારા બ્લોગ નિયંત્રક છે, અમે બીજા ચલ બાંધવા શકે છે. કદાચ તે "કિંમતો" કૉલ કરો. અને શાબ્દિક અર્થ, પોસ્ટ એરે પસાર કરે છે. એટલે કે, આ માન્યતા નિષ્ફળ જો અર્થ એ થાય કે મને હું છેલ્લા વિનંતી સબમિટ કે પોસ્ટ એરે પસાર કરવા માટે, અને તે રીતે હું મારા છેલ્લા સબમિશન ના કિંમતો ઉપયોગ કરી શકો છો ક્ષેત્રોમાં repopulate છે. હવે હું કિંમતો લેખક કંઈક કરી શકો છો હું કેટલાક રેન્ડમ સામગ્રી કરી અને હવે જો શરીર, અને તે રીતે કિંમતો અને પછી તે ત્યાં રહે છે ", પોસ્ટ સબમિટ કરો" ક્લિક કરો. પરંતુ અમે અન્ય સમસ્યા પણ રહ્યા છીએ. હું પૃષ્ઠ પર ખૂબ જ પ્રથમ વખત જાય એટલે કે, જો કામ કરે છે, પરંતુ તે તૂટી રહ્યું છે, અને તે છે ખૂબ જ પ્રથમ વખત કારણ કે અમે પૃષ્ઠ પર જાઓ, આ પોસ્ટ ચલ હજી સુધી સ્પષ્ટ કરવામાં નથી. તે નલ છે. તે અસ્તિત્વમાં નથી. આ કી હાજર છે અને શું અમે કહી માંગો છો, છે પછી આ એરે ની કિંમત પરત, કી હાજર ના હોય પરંતુ, તે પછી એક ખાલી શબ્દમાળા આવો. કે અમે અહીં છો કાર્યક્ષમતા છે. અમે કી એરે વાપરવા માટે પ્રયત્ન કરતાં પહેલાં અસ્તિત્વમાં છે તે ચકાસવા માટે કરવા માંગો છો, અને સદભાગ્યે પૂરતી છે, Kohana પણ અમને તે માટે એક મદદગાર કાર્ય આપે છે. તેઓ કાર્યો છે આ સમગ્ર સેવામાંથી છે માટે નામ આગમન હેઠળ, ટૂંકા એરે માટે, અને તેઓ ", વિચાર" કહેવાય 1 કાર્ય છે અને તમે એરે પસાર કરી શકો છો, અને તમે માટે નામને પાસ કરી શકો છો. પછી મૂળભૂત રીતે શું તે શું કરશે તે તે કી મેળવવાનો પ્રયત્ન કરશે છે, પરંતુ તે કી એરે હાજર ના હોય, હું માનું છું કે, તો પછી તેને ખાલી પાછા આવશે, અથવા આપણે મૂળભૂત સ્પષ્ટ કરી શકો છો જે સરસ છે. હવે અમે ફરીથી આ જ વાત કરો તો, પછી તમે તે આસપાસ પ્રથમ વખત કામ કરે છે હવે જુઓ અને ફરી, અમે કેટલાક રેન્ડમ સામગ્રી લખો તો અને પછી તે ત્યાં રહે છે, પ્રયત્ન કરો અને સબમિટ કરો. અને હું હું પણ કેવી રીતે ખરેખર ઝડપથી એક નમૂનો ઉમેરવા માટે બતાવી શકે ધારી. અમે પ્રથમ કરી શકો છો શું છે અમે "template.php" કહેવાય નવા દ્રશ્ય ઉમેરી શકો છો પાંચ જોવાઈ ફોલ્ડર અંદર, અને હું શું કરવા જાઉં છું ", સામગ્રી" હું કહેવાય છે તેની પ્રિન્ટ જાઉં છું છે મારા મુખ્ય વિષયવસ્તુ કરી રહ્યું છે. અને કદાચ ખૂબ જ નીચે હું કહે છે, ઉમેરો જાઉં છું Copyright. [અશ્રાવ્ય વિદ્યાર્થી પ્રશ્ન] [બ્રાન્ડોન લિયુ] કદાચ આ હું ઉપયોગ કરવા માંગો છો એક સુપર મૂળભૂત નમૂનો છે. હું દરેક એક પર મારા Copyright સાથે ફોલ્ડર માંગો છો, અને હવે હું મારા નિયંત્રક અંદર કરવા જાઉં છું શું એમ કહેવાને બદલે કહો હવે છે "કંટ્રોલર વિસ્તરે" હું ", Controller_Template વિસ્તરે", કહેવા જાઉં છું એમ કહેવાને બદલે કહો અને હવે, "પ્રતિભાવ શરીર, આ જુઓ સમાન છે" હું કહેવા જાઉં છું "આ નમૂનો સામગ્રી છે -" અને મને લાગે છે કે - હું એક સમાન સાઇન મૂકી શકું? હું ભૂલી જાઓ. અરે વાહ, હું વિચાર્યું. અને હવે હું સામગ્રી ચલ દેખાવ સમાન થાય છે કે સુયોજિત કરો. હું અહીં જ કરી શકે છે. હું તાજું અને હવે જો, જો તમે આ Copyright ત્યાં ઉમેરવામાં આવે છે હવે જોઈ શકો છો અને માત્ર કેટલાક રેન્ડમ પોસ્ટ કરો, અને પછી, ફરીથી, તમે કૉપિરાઇટ પાનાંની ખૂબ જ તળિયે છે કે જોવા જોઈએ. સરસ. કે હું તમને ગાય્ઝ બતાવવા માગે છે બધા છે. [વધાવી] કોઈપણ પ્રશ્ન છે? [CS50.TV]