আমি এটি করার চেষ্টা করছি:
{% for movie in movie_list | sort(movie.rating) %}
তবে এটি ঠিক নয় ... ডকুমেন্টেশনটি অস্পষ্ট ... আপনি জিনজা 2 এ এটি কীভাবে করবেন?
আমি এটি করার চেষ্টা করছি:
{% for movie in movie_list | sort(movie.rating) %}
তবে এটি ঠিক নয় ... ডকুমেন্টেশনটি অস্পষ্ট ... আপনি জিনজা 2 এ এটি কীভাবে করবেন?
উত্তর:
সংস্করণ ২.6 অনুসারে, জিনজা ২ এর অন্তর্নির্মিত বাছাই করা ফিল্টার আপনাকে এর দ্বারা বাছাই করার জন্য একটি বৈশিষ্ট্য নির্দিষ্ট করতে দেয়:
{% for movie in movie_list|sort(attribute='rating') %}
list_of_tuples|sort(attribute='0')
reverse=True
।
আপনি যদি আরোহী ক্রম অনুসারে বাছাই করতে চান
{% for movie in movie_list|sort(attribute='rating') %}
আপনি যদি উতরান ক্রম অনুসারে বাছাই করতে চান
{% for movie in movie_list|sort(attribute='rating', reverse = True) %}
সাধারণত আমরা জিনজা 2 এ দেওয়ার আগে তালিকাটি সাজান। জিনজার মধ্যে কোনও কী নির্দিষ্ট করার উপায় নেইsort
ফিল্টারে ।
তবে, আপনি সর্বদা চেষ্টা করতে পারেন {% for movie in movie_list|sort %}
। এটাই সিনট্যাক্স। আপনি বাছাইয়ের জন্য কোনও ধরণের কী তথ্য সরবরাহ করতে পারবেন না।
আপনি এটির জন্য একটি কাস্টম ফিল্টার চেষ্টা করেও লিখতে পারেন। আপনি জিনজা 2 তে ডেটা দেওয়ার আগে বাছাই করতে পারলে নির্বোধ মনে হয়।
তাহলে movie_list
বস্তুর একটি তালিকা রয়েছে, তাহলে আপনি বিভিন্ন তুলনা পদ্ধতি (বর্ণনা করতে পারেন __lt__
, __gt__
যারা বস্তুর বর্গ জন্য, ইত্যাদি)।
যদি movie_list
টিপলস বা তালিকার একটি তালিকা হয় তবে রেটিংটি প্রথম হওয়া উচিত। অথবা আপনাকে জিনজা 2 এর বাইরে বাছাই করতে হবে।
যদি movie_list
অভিধানগুলির একটি তালিকা থাকে তবে আপনি ব্যবহার করতে পারেন dictsort
যা বাছাইয়ের জন্য কোনও মূল স্পেসিফিকেশন গ্রহণ করে। এটি পড়ুন: http://jinja.pocoo.org/2/docamentation/templates#dictsort উদাহরণের জন্য।
dict.items()
) দ্বারা তৈরি হয়ে থাকে তবে যদি একটি সূচক নির্দিষ্ট করা সম্ভব হয় :sort(attribut='1')