Yii 1.1.9

1.1.9 नंबर के साथ Yii PHP फ्रेमवर्क का एक स्थिर संस्करण जारी किया गया है। इस रिलीज़ में लगभग 60 सुधार और बग फिक्स शामिल हैं।

परिवर्तनों की एक पूरी सूची संबंधित फाइल में पाई जा सकती है। पुराने संस्करणों से अपग्रेड करने से पहले, निर्देशों को पढ़ना महत्वपूर्ण है।

रूसी भाषा का प्रलेखन, हमेशा की तरह, पूरी तरह से अद्यतित स्थिति में है। इसके अलावा, रिलीज के समय पाए जाने वाले सभी टाइपो को तय किया गया है। सभी के लिए धन्यवाद, जो yiiframework.ru पर Orphus का उपयोग करते हैं।

सबसे दिलचस्प बदलावों पर विचार करें।



ActiveRecord संबंध में `through` को परिभाषित करने का एक और अधिक सुविधाजनक तरीका



हालांकि संस्करण 1.1.7 में विकल्प जोड़ा गया था, लेकिन सिंटैक्स बहुत सुविधाजनक नहीं था, इसलिए इसे और अधिक स्पष्ट करने का निर्णय लिया गया। वर्तमान सिंटैक्स निम्न सिंटैक्स का उपयोग करता है:

 'टिप्पणियाँ' => सरणी (स्वयं :: HAS_MANY, 'टिप्पणी', सरणी ('key1' => 'key2'), '' => 'पदों' के माध्यम से),


उपरोक्त array('key1'=>'key2') :

- key1 कुंजी के through निर्दिष्ट संबंध में परिभाषित किया गया है (हमारे मामले में, यह posts )।
- की 2 मॉडल में परिभाषित की गई कुंजी है जो हमारे मामले में, यह Comment

के माध्यम से दोनों HAS_ONE और HAS_MANY के लिए इस्तेमाल किया जा सकता है।

यह सुविधा पूर्ण मार्गदर्शिका के संबंधपरक सक्रिय रिकॉर्ड अनुभाग में अधिक विस्तार से वर्णित है।

मॉडल में हालत समूहों के लिए समर्थन :: संबंध ()



अब आप मॉडल संबंधों को परिभाषित करते समय स्थिति समूहों का उपयोग कर सकते हैं:

 'हाल ही में तैयार किए गए' '=> सरणी (स्वयं :: BELONGS_TO,' पोस्ट ',' पोस्ट_आईडी ') 
     'scopes' => सरणी ('स्वीकृत', 'हाल')),


शर्तों के केवल एक समूह का उपयोग करते समय, इसे एक स्ट्रिंग के रूप में निर्दिष्ट किया जा सकता है।

दिए गए कुंजी द्वारा मॉडल के बीच जोइन बनाने की क्षमता



इस संस्करण में, एक डेटा योजना पर भरोसा किए बिना, किसी दिए गए जोड़ी PK-> FK के लिए संबंध बनाना संभव हो गया। इसका अर्थ है कि, उदाहरण के लिए, आप Day मॉडल के लिए निम्नलिखित संबंध निर्दिष्ट कर सकते हैं:

 'जॉब्स' => एरे (सेल्फः एचएएसएवाईवाईवाई, 'जॉब', एरे ('डेट' => 'टारगेट_डैट'),)


इस मामले में, Day में कई Job शामिल हो सकते हैं। हालांकि, वे सामान्य तरीके से जुड़े नहीं हैं। हम कुंजी को array('fk'=>'pk') के रूप में सेट करते हैं, अर्थात आउटपुट पर हमें पंक्ति मिलती है जैसे

 * से चुनें दिन टी
 T.date = job.target_date पर जॉइन करें


Yii :: $ classMap के साथ कर्नेल कक्षाओं को ओवरराइड करने की क्षमता



Yii में 1.1.5 से शुरू होकर, वर्गों को पहले से आयात करना और उन्हें स्पष्ट आयात के बिना उपयोग करना या include । अब उसी दृष्टिकोण का उपयोग करके, आप कर्नेल कक्षाओं को ओवरराइड कर सकते हैं।

Source: https://habr.com/ru/post/In135595/


All Articles