القضبان: باستخدام "Content_for" بعد تخطيط "العائد" المقابل

StackOverflow https://stackoverflow.com/questions/2026740

سؤال

أعتقد أن هذا قد طلب من قبل ولكن على الرغم من أنني بحثت Google، فأنا لم آن حلا.

لذلك هذا ما أحاول القيام به في القضبان 2.3.5:

layouts/application.html.erb:
<html>
  <head>
    ... some other stuff
    <%= yield :head %>
  </head>
  <body>
    <% content_for :head, "something that belongs in the head" %>
  </body>
</html>

لاحظ العائد قبل المحتوى_اف.

أعلم أن القضبان - افتراضيا - لا يسمح بمحتوى: الرأس المراد تحديده بعد تم استخدام العائد - منطقي.

لقد حاولت التثبيت في عملية تقديم القالب ولكن لا يوجد نجاح حتى الآن.

لذلك هدفي هو أن تكون قادرا على تحديد المحتوى_ فورس داخل أجزاء / قوالب ولديها تأخر "العائد" بطريقة أو بأخرى مباشرة قبل إرسال الاستجابة إلى المتصفح.

هل وصل شخص ما إلى حل؟

تحية و شكرا، صريح

تحديثسأذهب مع فكرة WEPPOS وحاول نفسي على رفوف الرف. شكرا

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

المحلول

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

تحتاج إلى تغيير استراتيجيتك. إما أن تضع الجزء في جزئي وإرفاقه إلى وجهات نظر الإجراء الخاصة بك أو استخدام استراتيجية بعد المعالجة مثل وحدة الرف / after_filter لتغيير رمز HTML مباشرة.

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

نصائح أخرى

لا ينبغي أن يكون هناك علامة تساوي في الخاص بك content_for بيان. يجب أن يكون:

<% content_for :head, "Something that belongs in the head" %>

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

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