با سلام
من از دستور شرطی زیر برای اینکه اگر محتوای یک فیلد مثلا برابر صفر بود صفر رو نشون بده در غیر اینصورت یک رو نشون بده . ولی متاسفانه وقتی دستورات (1) رو مینویسم اگر هرچی داخل فیلد بنویسم ، همیشه یک رو نشون میده و در دستورات (2) همیشه صفر . مشکل کجاست ؟
(1)
{% if content.field_number == 0 %}
صفر
{% else %}
یک
{% endif %}
(2)
{% if content.field_number %}
صفر
{% else %}
یک
{% endif %}
نوع تاپیک:
نسخه مرتبط:
وضعیت: آفلاین
بگم که در دستور (1) و (2) من فیلد رو خالی میزارم ولی بازم خروجیش همون ها میشه .
وضعیت: آفلاین
content.field_number رو چاپ کن ببین که چی نمایش داده میشه، روی اون شرط رو بگذار.
وضعیت: آفلاین
content.field_number چون متغیر هست از نوع عددی برای همین هر عددی میزارم در چاپ درست نمایش میده ولی وقتی در دستور شرطی میزارمش جواب نمیده !!
وضعیت: آفلاین
خروجی که میشه دیگه عدد نیست، خروجی رو اول به عدد تبدیل کنید بعد توی شرظ بگذارین.
من برای کاری از سرویس استفاده میکردم و خروجی رو مقایسه میکردم همین مشکل پیش اومد، با تبدیل مشکلم حل شد.
وضعیت: آفلاین
منظورتون استفاده از set هست ؟ اگر آره که امتحانش کردم ولی ازم جواب نداد .
الان خروجیه :
{{ content.field_number }}
فرضا میشه 9 . چرا نمیشه مستقیم داخلش گذاشت ؟
میشه کد دستوری رو در صورت امکان برام بنویسین ؟
وضعیت: آفلاین
البته اینمبگم که حتی با خروجی کاراکتر هم قرار داد ولی درست جواب نداد
وضعیت: آفلاین
ضمنا میشه این دستورات رو مستقیم در node.html.twig قرار داد ؟
وضعیت: آفلاین
مشکل حل شد . باید بجای content.field_number از node.field_number.value استفاده میکردم .