J3.x

J3.x:تطوير مكون MVC/مقدمة

From Joomla! Documentation

< J3.x:Developing an MVC Component
This page is a translated version of the page J3.x:Developing an MVC Component/Introduction and the translation is 100% complete.

Other languages:
العربية • ‎Deutsch • ‎English • ‎español • ‎français • ‎Nederlands • ‎português do Brasil • ‎中文(中国大陆)‎
Joomla! 
3.x
درس
تطوير مكون MVC


هذه سلسلة من عدة مقالات من الدروس حول كيفية تطوير موديل-عرض-موجه مكون لنسخة Joomla! Joomla 3.x.

تبدأ مع مقدمة, وتستعرض المقالات في هذه السلسلة باستخدام زر التنقل في الأسفل أو الصندوق الأيمن ("المقالات في هذه السلسلة").



ملاحظات

المتطلبات

تحتاج الى Joomla! 3.0 (مع PHP, MySQL and Apache/Microsoft IIS) أو أعلى لهذا الدرس. لقد جمعت العديد من المعلومات ومن ثم بدأت بتحويل هذا المكون من Joomla! 2.5 الى 3.0. في الأسفل بعض المعلومات المهمة المستخدمة للتحويل. الرجاء شاهد أيضا كافة المعلومات حول الهجرة أو التحويل نسخ التطوير. استخدم "display_errors On" للمساعدة في عملية تصحيح الأخطاء.

هجرة Joomla! 2.5 الى Joomla! 3.0:

تذكر أنك تحتاج إلى إضافة وراثي في أي مكان يتم فيه توسيع مباشرة لـ JModel، JVIEW أو JController. إذا كان غير مباشر (مثل من خلال JModelList) فلا داعي لذلك، لأنه تم بالفعل معالجته. عدا ذلك، وحقيقة أن، كما أعلن منذ فترة طويلة، تمت إزالة كود إهمال (كنت اعتقد أن JParameter هو الأثر الأكبر)، ملحقات تحتاج فقط الى تغييرات طفيفة ... على الرغم من أنك سوف ترغب في النظر الى تغييرات الخرج الذي يعمل كايل عليه. بالطبع، إذا كنت تبني تطبيقات منصة قائمة بذاتها، فإن وMVC وJApplicationWeb / JApplicationCLI الجديدة هي الطريقة التي يجب أن تعمل بها بشكل كامل، والشيء الجميل في الطريقة التي قمنا بها هي أن الحزم الجديدة هي بالفعل موجودة على المخدم الخاص بك بعد تركيب CMS. (إيلين في قائمة التطوير)

أمثلة: DS وبما أننا قمنا بإزالة ثابت DS في 3.0، نحن بحاجة إلى استبدال استخدامات ثابت في com_media. أكثر تغيير غير مزعج هو ببساطة استبدال ذلك مع ثابت DIRECTORY_SEPARATOR PHP حيث أن DS هو اسم مستعار لذلك.

(joomlacode)

if(!defined('DS')){
define('DS',DIRECTORY_SEPARATOR);
}

//$controller = JController::getInstance('HelloWorld');
$controller = JControllerLegacy::getInstance('HelloWorld');

//class HelloWorldViewHelloWorlds extends JView
class HelloWorldViewHelloWorlds extends JViewLegacy

class HelloWorldController extends JControllerLegacy

class HelloWorldModelHelloWorld extends JModelItemLegacy

class HelloWorldModelUpdHelloWorld extends JModelFormLegacy

JRegistry::getValue() now is JRegistry::get()

//Convert sample to JRegistry with LoadJSON - Sample from Joomla! 3.0 sourcecode

//				$params = new JRegistry;
//				$params->loadJSON($this->item->params);
//				$this->item->params = $params;

				$params = new JRegistry;
				$params->loadString($item->params);
				$item->params = $params;

هنا الكود المصدري: http://joomlacode.org/gf/project/hellojoomla3/frs/

جديد MVC في Joomla! 3.0

"النسخة 12.1 من المنصة تقدم شكل جديد لمخطط لموديل-عرض-موجه. ومن حيث المبدأ، فإن الأصناف JModel، JVIEW وJController هي الآن واجهات والأصناف الأساسية للتجريد هي الآن JModelBase، JViewBase وJControllerBase، على التوالي. وبالإضافة إلى ذلك، وقد تم تبسيط جميع الأصناف، وإزالة الكثير من اقتران مع Joomla! CMS، ان ذلك غير ضروري لتطبيقات منصة Joomla! لوحدها ". ... Joomla! Platform Manual MVC

المساهمين