شما اینجا هستید

دستورات شرطی در قالب دروپال 8 ( twig )

9 پست / 0 جدید
آخرین ارسال

وضعیت: آفلاین
  • تعداد ارسال: ۳۱۶
  • تاریخ عضویت: ۱۳۹۳/۰۹/۳۰
  • آخرین حضور: ۱۳۹۶/۱۲/۰۲
  • سمت: کاربر عضو
  • موقعیت: نامشخص

با سلام
من از دستور شرطی زیر برای اینکه اگر محتوای یک فیلد مثلا برابر صفر بود صفر رو نشون بده در غیر اینصورت یک رو نشون بده . ولی متاسفانه وقتی دستورات (1) رو مینویسم اگر هرچی داخل فیلد بنویسم ، همیشه یک رو نشون میده و در دستورات (2) همیشه صفر . مشکل کجاست ؟

(1)
{% if content.field_number == 0 %}
صفر
{% else %}
یک
{% endif %}

(2)
{% if content.field_number %}
صفر
{% else %}
یک
{% endif %}

نسخه مرتبط: 

وضعیت: آفلاین
  • تعداد ارسال: ۳۱۶
  • تاریخ عضویت: ۱۳۹۳/۰۹/۳۰
  • آخرین حضور: ۱۳۹۶/۱۲/۰۲
  • سمت: کاربر عضو
  • موقعیت: نامشخص

بگم که در دستور (1) و (2) من فیلد رو خالی میزارم ولی بازم خروجیش همون ها میشه .


وضعیت: آفلاین
  • نسخه دروپال: 7.99
  • تعداد ارسال: ۲۸۶
  • تاریخ عضویت: ۱۳۸۹/۰۵/۰۲
  • آخرین حضور: ۱۳۹۶/۱۰/۱۱
  • سمت: همیار قدیمی
  • موقعیت: اصفهان

content.field_number رو چاپ کن ببین که چی نمایش داده میشه، روی اون شرط رو بگذار.


وضعیت: آفلاین
  • تعداد ارسال: ۳۱۶
  • تاریخ عضویت: ۱۳۹۳/۰۹/۳۰
  • آخرین حضور: ۱۳۹۶/۱۲/۰۲
  • سمت: کاربر عضو
  • موقعیت: نامشخص

content.field_number چون متغیر هست از نوع عددی برای همین هر عددی میزارم در چاپ درست نمایش میده ولی وقتی در دستور شرطی میزارمش جواب نمیده !!


وضعیت: آفلاین
  • نسخه دروپال: 7.99
  • تعداد ارسال: ۲۸۶
  • تاریخ عضویت: ۱۳۸۹/۰۵/۰۲
  • آخرین حضور: ۱۳۹۶/۱۰/۱۱
  • سمت: همیار قدیمی
  • موقعیت: اصفهان

خروجی که میشه دیگه عدد نیست، خروجی رو اول به عدد تبدیل کنید بعد توی شرظ بگذارین.
من برای کاری از سرویس استفاده میکردم و خروجی رو مقایسه میکردم همین مشکل پیش اومد، با تبدیل مشکلم حل شد.


وضعیت: آفلاین
  • تعداد ارسال: ۳۱۶
  • تاریخ عضویت: ۱۳۹۳/۰۹/۳۰
  • آخرین حضور: ۱۳۹۶/۱۲/۰۲
  • سمت: کاربر عضو
  • موقعیت: نامشخص

منظورتون استفاده از set هست ؟ اگر آره که امتحانش کردم ولی ازم جواب نداد .
الان خروجیه :
{{ content.field_number }}
فرضا میشه 9 . چرا نمیشه مستقیم داخلش گذاشت ؟
میشه کد دستوری رو در صورت امکان برام بنویسین ؟


وضعیت: آفلاین
  • تعداد ارسال: ۳۱۶
  • تاریخ عضویت: ۱۳۹۳/۰۹/۳۰
  • آخرین حضور: ۱۳۹۶/۱۲/۰۲
  • سمت: کاربر عضو
  • موقعیت: نامشخص

البته اینمبگم که حتی با خروجی کاراکتر هم قرار داد ولی درست جواب نداد


وضعیت: آفلاین
  • تعداد ارسال: ۳۱۶
  • تاریخ عضویت: ۱۳۹۳/۰۹/۳۰
  • آخرین حضور: ۱۳۹۶/۱۲/۰۲
  • سمت: کاربر عضو
  • موقعیت: نامشخص

ضمنا میشه این دستورات رو مستقیم در node.html.twig قرار داد ؟


وضعیت: آفلاین
  • تعداد ارسال: ۳۱۶
  • تاریخ عضویت: ۱۳۹۳/۰۹/۳۰
  • آخرین حضور: ۱۳۹۶/۱۲/۰۲
  • سمت: کاربر عضو
  • موقعیت: نامشخص

مشکل حل شد . باید بجای content.field_number از node.field_number.value استفاده میکردم .