खोज…


टिप्पणियों

यह अनुभाग इस बात का एक सिंहावलोकन प्रदान करता है कि केकफ क्या है, और क्यों एक डेवलपर इसका उपयोग करना चाहता है।

यह भी केक के भीतर किसी भी बड़े विषयों का उल्लेख करना चाहिए, और संबंधित विषयों के लिए लिंक करना चाहिए। चूंकि केकफ के लिए दस्तावेज़ीकरण नया है, इसलिए आपको उन संबंधित विषयों के प्रारंभिक संस्करण बनाने की आवश्यकता हो सकती है।

संस्करण

संस्करण रिलीज़ की तारीख
1.2.0 2008-12-26
1.3.0 2010-04-25
2.0.0 2011-10-17
3.0.0 2015/03/22

स्थापना या सेटअप

आवश्यकताएँ

निम्नलिखित सेटअप गाइड केकफ 2.8 और इसके बाद के संस्करण के लिए है। 2.8 से कम के सभी केकफैप संस्करण php 7 के साथ संगत नहीं हैं

HTTP सर्वर। उदाहरण के लिए: अपाचे। Mod_rewrite पसंद किया जाता है, लेकिन किसी भी तरह से आवश्यक नहीं है।

  • PHP 5.5.9 या अधिक (PHP 7 सहित)।
  • mbstring PHP एक्सटेंशन
  • PHP विस्तार

ध्यान! XAMPP और WAMP दोनों में, mbstring एक्सटेंशन डिफ़ॉल्ट रूप से काम कर रहा है। XAMPP में, intl एक्सटेंशन शामिल है, लेकिन आपको php.ini में एक्सटेंशन = php_intl.dll को अनइंस्टॉल करना होगा और XAMPP कंट्रोल पैनल के माध्यम से सर्वर को पुनरारंभ करना होगा। WAMP में, intl का एक्सटेंशन डिफ़ॉल्ट रूप से "सक्रिय" है, लेकिन काम नहीं कर रहा है। यह काम करने के लिए आपको php फ़ोल्डर (डिफ़ॉल्ट रूप से) C: \ wamp \ bin \ php \ php {version} पर जाना होगा, उन सभी फाइलों को कॉपी करें जो icu * .dll की तरह दिखती हैं और उन्हें अपाचे बिन डायरेक्टरी C में पेस्ट करें: \ WAMP \ बिन \ अपाचे \ अपाचे {version} \ बिन। फिर सभी सेवाओं को पुनरारंभ करें और यह ठीक होना चाहिए।

जबकि एक डेटाबेस इंजन की आवश्यकता नहीं है, हम कल्पना करते हैं कि अधिकांश एप्लिकेशन एक का उपयोग करेंगे। CakePHP डेटाबेस भंडारण इंजन की एक किस्म का समर्थन करता है:

  • MySQL (5.1.10 या अधिक)
  • PostgreSQL
  • Microsoft SQL सर्वर (2008 या उच्चतर)
  • SQLite 3

CakePHP3 फ़ोल्डर संरचना

आपके द्वारा डाउनलोड किए जाने के बाद, ये वे फ़ाइलें और फ़ोल्डर्स हैं जिन्हें आपको देखना चाहिए:

  • बिन फ़ोल्डर केक कंसोल निष्पादन योग्य रखता है।
  • विन्यास फ़ोल्डर उस विन्यास फाइल को रखता है जिसे CakePHP उपयोग करता है। डेटाबेस कनेक्शन विवरण, बूटस्ट्रैपिंग, कोर कॉन्फ़िगरेशन फाइलें और अधिक को यहां संग्रहीत किया जाना चाहिए।
  • प्लगइन्स फ़ोल्डर वह जगह है जहाँ प्लगइन्स आपके अनुप्रयोग का उपयोग करता है संग्रहीत हैं।
  • लॉग फ़ोल्डर में आमतौर पर आपकी लॉग कॉन्फ़िगरेशन के आधार पर आपकी लॉग फाइलें होती हैं।
  • Src फ़ोल्डर वह होगा जहां आपके एप्लिकेशन की फाइलें रखी जाएंगी।
  • परीक्षण फ़ोल्डर वह होगा जहां आप अपने आवेदन के लिए परीक्षण के मामले डालते हैं।
  • Tmp फ़ोल्डर वह जगह है जहाँ CakePHP अस्थायी डेटा संग्रहीत करता है। आपके द्वारा संग्रहित वास्तविक डेटा इस बात पर निर्भर करता है कि आपने CakePHP को कैसे कॉन्फ़िगर किया है, लेकिन यह फ़ोल्डर आमतौर पर मॉडल विवरण और कभी-कभी सत्र जानकारी संग्रहीत करने के लिए उपयोग किया जाता है।
  • विक्रेता फ़ोल्डर वह जगह है जहां CakePHP और अन्य अनुप्रयोग निर्भरताएं स्थापित की जाएंगी। इस फ़ोल्डर में फ़ाइलों को संपादित नहीं करने के लिए एक व्यक्तिगत प्रतिबद्धता बनाएं।
  • Webroot निर्देशिका आपके आवेदन का सार्वजनिक दस्तावेज़ रूट है। इसमें वे सभी फाइलें शामिल हैं, जिन्हें आप पारंपरिक रूप से उपलब्ध होना चाहते हैं।

सुनिश्चित करें कि tmp और लॉग फ़ोल्डर मौजूद हैं और लिखने योग्य हैं, अन्यथा आपके एप्लिकेशन का प्रदर्शन गंभीर रूप से प्रभावित होगा। डिबग मोड में, CakePHP आपको चेतावनी देगा, अगर यह मामला नहीं है।

फ़ोल्डर के अंदर

CakePHP का src फ़ोल्डर वह जगह है जहां आप अपने अधिकांश एप्लिकेशन डेवलपमेंट करेंगे।

कंसोल फ़ोल्डर में आपके एप्लिकेशन के लिए कंसोल कमांड और कंसोल कार्य शामिल हैं। अधिक जानकारी के लिए गोले, कार्य और कंसोल उपकरण देखें।

नियंत्रक फ़ोल्डर में आपके एप्लिकेशन के नियंत्रक और उनके घटक होते हैं।

स्थानीयकरण फ़ोल्डर अंतर्राष्ट्रीयकरण के लिए स्ट्रिंग फ़ाइलों को संग्रहीत करता है।

मॉडल फ़ोल्डर में आपके एप्लिकेशन के टेबल, इकाइयां और व्यवहार शामिल हैं।

देखें - प्रेजेंटेशनल कक्षाएं यहां रखी गई हैं: सेल, हेल्पर्स, और टेम्प्लेट फाइलें।

टेम्प्लेट - प्रस्तुति फ़ाइलें यहां रखी गई हैं: तत्व, त्रुटि पृष्ठ, लेआउट, और टेम्प्लेट फाइलें देखें।

बेसिक पहला खाली प्रोजेक्ट

प्रारंभिक निर्माण और डाउनलोड (CakePHP 3.x)

एक नया CakePHP प्रोजेक्ट बनाने का सबसे आसान तरीका संगीतकार के माध्यम से है (यदि आप संगीतकार के बारे में अधिक जानकारी के लिए यहां नहीं जानते हैं)

संगीतकार स्थापित करें

यदि आपको इसे स्थापित करने की आवश्यकता है और एक विंडोज़ मशीन पर हैं तो इस गाइड का पालन करें

यदि आप लिनक्स / यूनिक्स / ओएसएक्स पर हैं तो इस गाइड का पालन करें

पहला CakePHP प्रोजेक्ट बनाएं

एक कंसोल विंडो खोलें और php की अपनी स्थापना पर नेविगेट करें (डिफ़ॉल्ट xampp स्थापना के साथ विंडोज पर यह C:\xampp\php )

खाली प्रोजेक्ट बनाने के लिए फिर निम्न कमांड चलाएँ:

php composer.phar create-project --prefer-dist cakephp/app name_of_your_project

बेकिंग / मॉडल / देखें / नियंत्रकों

CakePHP का जादू बेकिंग है - मूल CRUD विकल्पों के साथ नियंत्रक, मॉडल और व्यू कोड की एक स्वचालित पीढ़ी।

बेक करने से पहले आपको अपने डेटाबेस कनेक्शन को कॉन्फ़िगर करना होगा। ऐसा करने के लिए आपको अपनी परियोजना में फ़ाइल config/app.php को संपादित करना होगा।

'Datasources' => [
'default' => [
    'className' => 'Cake\Database\Connection',
    'driver' => 'Cake\Database\Driver\Mysql',
    'persistent' => false,
    'host' => 'localhost',
    'username' => 'my_app', //in basic xampp: root
    'password' => 'sekret', //in basic xampp: ''
    'database' => 'my_app', //name of the database you want to connect to your project
    'encoding' => 'utf8',
    'timezone' => 'UTC',
    'cacheMetadata' => true,
]

],

यदि आपका डेटाबेस सही तरीके से जुड़ा हुआ है तो आप कंसोल प्रोजेक्ट विंडो में अपने प्रोजेक्ट के रूट फ़ोल्डर में bin/cake bake दर्ज करें।

यह इस तरह से कुछ उत्पादन करना चाहिए:

Welcome to CakePHP v3.1.6 Console
---------------------------------------------------------------
App : src
Path: /var/www/cakephp.dev/src/
PHP: 5.5.8
---------------------------------------------------------------
The following commands can be used to generate skeleton code for your application.

Available bake commands:

- all
- behavior
- cell
- component
- controller
- fixture
- form
- helper
- mailer
- migration
- migration_snapshot
- model
- plugin
- shell
- shell-helper
- template
- test

By using `cake bake [name]` you can invoke a specific bake task.

सादगी प्रयोजनों के लिए हम डिफ़ॉल्ट सेटिंग्स के साथ सब कुछ सेंकना करने जा रहे हैं। ऐसा करने के लिए आप दर्ज करें

cake bake all

यह उन लाइनों के साथ कुछ उत्पादन करेगा:

Welcome to CakePHP v3.2.11 Console
---------------------------------------------------------------
App : src
Path: C:\xampp\htdocs\tipping\src\
PHP : 5.6.15
---------------------------------------------------------------
Bake All
---------------------------------------------------------------
Possible model names based on your database:
- users
- blogs
Run `cake bake all [name]` to generate skeleton files.

cake bake all <modelNameYouWantToBake> करके cake bake all <modelNameYouWantToBake> मॉडल, तालिका, नियंत्रक, स्थिरता और दृश्य फ़ाइलें बनाई जाती हैं। इसे हर संभव मॉडल नाम के लिए चलाएं और आपके पास मूल CRUD विकल्पों के साथ एक कार्यशील परियोजना है।

अब आप अपना ब्राउज़र खोल सकते हैं और देख सकते हैं कि यह कैसा दिखता है और अपने तर्क से परियोजना का विस्तार करना शुरू करें

आवश्यकताएँ

1-HTTP Server. For example: Apache. Having mod_rewrite is preferred, but by no means required.
2-PHP 5.5.9 or greater (including PHP 7)
3-mbstring PHP extens ion
4-intl PHP extension

मैं आमतौर पर एक linuxbox पर एक अपाचे और mysql की स्थापना करता हूं। मैं विंडोज़ का भी उपयोग कर सकता हूं, हालांकि मैं इसकी सिफारिश नहीं करता हूं;) इसलिए, मैं आमतौर पर / etc / मेजबान फ़ाइल में एक नया प्रवेश करने के लिए एक नाम उपलब्ध कराती हूं, जो कि कैम्फप को उपलब्ध कराता है।

127.0.0.1   localhost caketest.local

अगला कदम सभी केकफैप फाइलों को एक उपनिर्देशिका के अंदर / घर / myusername / public_html / caketest में कॉपी करने के लिए

app
cake
index.php
plugins
README
vendors
.htaccess

तब मैंने अपाचे (अपवित्र नहीं) के लिए साइट स्थापित की,

<VirtualHost *: 80> DocumentRoot "/ home / myusername / public_html / caketest" ServerName caketest.local
# यह उत्पादन वातावरण SetEnv APPLICATION_ENV विकास में छोड़ा जाना चाहिए

<Directory "/home/myusername/public_html/caketest">
Options Indexes MultiViews FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>

फिर से शुरू करें। आपको .htaccess फ़ाइलों को संपादित करने और वास्तविक निर्देशिका में hte पथ के साथ एक RewriteBase निर्देश रखने की आवश्यकता है, जैसे।

 RewriteBase /~myusername/caketest

एक डेटाबेस बनाएँ, केक कॉन्फिग फाइलों में डीबी कनेक्शन सेट करें और बस। आप अपने ब्राउज़र को http: //cetetest.local पर इंगित कर सकते हैं यदि आप एक परीक्षण साइट url नहीं चाहते हैं तो आप मेजबानों को छोड़ सकते हैं, और अपाचे vhost निर्माण कर सकते हैं, लेकिन उपयोग करने वाला url http: / localhost / ~ myuserner / caketest होना चाहिए

एक और महत्वपूर्ण बात यह है कि Apache में userdir modul को सक्षम करना है, और यह भी जांचना है कि php का उपयोग करना userdirs में भी सक्षम है या नहीं।

CakePHP 2.x मूल परिचय

CakePHP की निर्देशिका संरचना के बारे में बात करेंगे, प्रत्येक फ़ोल्डर का क्या मतलब है।

CakePHP में कुछ मुख्य फ़ोल्डर हैं

  1. एप्लिकेशन - इसमें हमारा एप्लिकेशन स्रोत कोड शामिल है, हमारे सभी कोड इस निर्देशिका के अंतर्गत आते हैं।
  2. lib - यह cakephp core liberary है, इसमें सभी बेस केकफ लाइब्रेरी कोड शामिल हैं। इस निर्देशिका के अंदर संपादन कोड का सुझाव नहीं दिया गया है क्योंकि वे कैफ़े लाइब्रेरी को अपग्रेड करते समय त्रुटि का कारण बन सकते हैं।
  3. प्लगइन्स - इसमें केकपीप प्लगइन्स कोड शामिल है जो कि हमारे एप्लिकेशन के लिए उपयोग किया जाएगा।
  4. वेंडर्स - इसमें बाहरी कोड होता है, यह कोड cakephp लाइब्रेरी का उपयोग नहीं करेगा।
  5. index.php - यह इंडेक्स फाइल है।

हम एक ही प्रोजेक्ट के अंदर कई एप्लिकेशन होस्ट कर सकते हैं। यानी वे समान लिबास फोल्डर, प्लगइन और विक्रेताओं का उपयोग कर सकते हैं।

Lib कोड को संशोधित करने के लिए, हमारे ऐप फ़ोल्डर में उन्हें विस्तारित करने और संशोधनों को करने के लिए सबसे अच्छा अभ्यास है।

प्लगइन्स और विक्रेताओं के फ़ोल्डर एक ही निर्देशिका में होस्ट किए गए सभी अनुप्रयोगों द्वारा साझा किए जाते हैं।

index.php वह फाइल है जिसे पहले कहा जाता है।

यहाँ छवि विवरण दर्ज करें

अब हमें अपने ऐप फ़ोल्डर में कूदना चाहिए



Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow