واجهة برمجة التطبيقات الخاصة هذه هي واجهة أستخدمها بشكل متكرر في تطبيقاتي للحصول على نموذج المسار الحالي برمجيًا. إنها في الغالب ملائمة لـ this.modelFor(this.routeName)
. هذا مفيد بشكل خاص لكتابة كود المسار الذي يمكن إعادة استخدامه والذي يحتاج للوصول إلى نموذج المسار الحالي.
¹ على الرغم من أن routeName
خاص ، انظر # 11759
: +1: مفيد للغاية - عندما أرى في مسار this.modelFor('a.route.name')
يجب أن أتحقق جيدًا لمعرفة ما إذا كان هذا هو اسم المسار الحالي أم لا. سيؤدي هذا إلى القضاء على مصدر الارتباك هذا ، خاصةً أنه يبدو أن أفضل ممارسة هي جعل المسار يتعامل مع الإجراءات من خلال التلاعب في نموذجه الخاص ، وليس (بشكل مثالي) نموذج مسار آخر.
ناقشنا هذا في الاجتماع الأساسي للفريق بعد ظهر اليوم ، وقررنا أننا نرغب في الحفاظ على خصوصية هذا الأمر. كما ذكرت this.modelFor(this.routeName)
(لقد اشتركت للتو في # 11759 بأننا يجب أن نجعل this.routeName
عامًا) طريقة جيدة للقيام بذلك باستخدام واجهات برمجة التطبيقات العامة. يمكنك أيضًا استخدام this.get('controller.model')
. يجب أن يزيل كلا الاقتراحين الغموض مع this.modelFor('a.b.c')
الذي ذكره davidgoli ..
شكرًا لفتح القضية للمناقشة ، سأختتم الآن بعد أن ناقشنا وقررنا الحفاظ على خصوصيته.
يبدو جيدًا ، سأقوم بعد ذلك بإنشاء اسم مستعار بـ ApplicationRoute
وهذا هو currentModel: function () { return this.modelFor(this.routeName); }
لأن هذا مفيد للغاية ومن العار أنه يتم تجاهله. لكننا سنستمر!
التعليق الأكثر فائدة
يبدو جيدًا ، سأقوم بعد ذلك بإنشاء اسم مستعار بـ
ApplicationRoute
وهذا هوcurrentModel: function () { return this.modelFor(this.routeName); }
لأن هذا مفيد للغاية ومن العار أنه يتم تجاهله. لكننا سنستمر!