سؤال

أود أن أعشق بعض أساليب المساعد لتبسيط application_helper ، على سبيل المثال ، لدي مجموعة من الطرق التي تتعامل مع العملات التي تنطبق على التطبيق بأكمله وأود أن أضع في العملات _helper ثم تضمين هذا المساعد بأكمله في مساعد التطبيق.

كيف يمكنني أن أفعل هذا؟

حاولت:

helper :currencies

وحصلت

undefined method `helper' for ApplicationHelper:Module
هل كانت مفيدة؟

المحلول

المساعدون في القضبان هم مجرد وحدات يتم تضمينها في وحدات التحكم للمساعدة في مشاركة الوظائف بينهم. كان هناك بعض الغرابة حول المساعدين في Rails 3 ، لذلك اعتمادًا على الإصدار الذي تقوم بتشغيله أو لا تعمل كما تتوقع من الصندوق.

في الأساس ما تريد القيام به هو إضافة helper :all لك application_controller والتي ستشمل جميع المساعدين في جميع وحدات التحكم الخاصة بك. إذا لم يكن هذا ما تريده ، فيمكنك تحديد المساعدين المحددين الذين تريدهم helper :currencies فمثلا.

في Rails 3 Betas helper :all كان السلوك الافتراضي ، لكني فكر في لقد عادوا ذلك في الإصدار الأخير.

هناك مقال رائع يناقش هذا كيف يعمل هذا في Rails 2 ، ولكن قد تكون هناك اختلافات في القضبان 3 ، ولكن يجب أن تكون نقطة انطلاق جيدة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top