سؤال

في بعض الأحيان يكون من الملائم أكثر الطباعة <%%>.كيف نفعل ذلك في القضبان؟

هل كانت مفيدة؟

المحلول

http://api.rubyonrails.org/ فصول / ActionView / المساعدون / TextHelper.html # طريقة ط CONCAT

وينبغي أن يكون ما كنت تبحث عنه.

ومنها مثلا. العبارة باستخدام concat التالية:

<% concat "Output" %>

وما يعادل:

<%= "Output" %>

نصائح أخرى

في ERB: و<٪٪> دلالة على أن هناك تعليمات برمجية روبي هنا إلى تفسير. و<٪ =٪> يقول الانتاج رمز روبي، أي عرض / طباعة النتيجة.

وهكذا يبدو تحتاج إلى استخدام خارج علامة = إذا كنت تريد أن الإخراج في ملف ERB القياسية.

وعلى خلاف ذلك، هل يمكن أن ننظر في بدائل ERB التي تتطلب تركيب أقل، .. ربما محاولة شيء من هذا القبيل HAML. http://haml-lang.com/tutorial.html

Example:

# ERB
<strong><%= item.title %></strong>

# HAML
%strong= item.title

هل هذا أكثر ملاءمة؟

erb لديه طريقتان لتقييم تعبيرات روبي المضمنة.ال <% الذي يقيم التعبير و <%= الذي يقيم ويطبع.لا يوجد أي كائن عمومي للطباعة إليه ضمن سياق الربط.

كما ذكر عمر، هناك com.concat الطريقة، وهي جزء من ActionView.هذا سوف يفعل ما تريد.

على عكس هروب لغة البرمجة النصية، لا يوجد مخرجات افتراضية لـ erb.نظرًا لأن erb هي مجرد دالة، ونظرًا للقالب والربط فسوف يُرجع متغيرًا، فإنه يُرجع قيم النص والوظائف بشكل متكرر.

هناك جدل ساخن حول مقدار المنطق الذي يجب السماح به في وجهة النظر، ولكن أقل قدر ممكن هو ما يهدف إليه معظم الناس.إذا كنت تضع تعليمات برمجية أكثر من النص في طريقة العرض، فقد تحتاج إلى التفكير في إعادة هيكلة التعليمات البرمجية الخاصة بك.

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