この質問がここに向けられているかどうかわからないので、そうでない場合は、すみません、削除します。
私は Symfony2、Twig、Doctrine を使用しています。私は演習として ToDo アプリに取り組んでおり、Web ページは次のようになります。
Today (5 tasks)
- Work (2 tasks)
- clean the desk
- write report
- Home (3 task)
- Pay (2 tasks)
- Internet
- Electricity
- Buy (1 task)
- Eggs
Completed (1 task)
- Work
- Talk to boss
カテゴリ (仕事と家庭)、サブカテゴリ (支払いと購入)、ステータス付きのタスク (完了または未完了) があります。
私の問題は、残りのタスクを数えることです。
番号はタスクの前に表示されるため、それを知るために次のようにします。
for each main_category
if the main_category has subcateries
count = 0
for each subcategory
for each task of the subcategory if the task.status is 0 (uncompleted)
set count = count + 1
endfor
endfor
else
count = 0
for each task of the category if the task.status is 0
set count = count + 1
endfor
endif
endfor
(それが機能するかどうかさえわかりませんが、あなたはアイデアを得たと思います。)
これは複雑で、ページが更新されるたびにこれを確認するのが遅いと思います。
私が考えることができる他のオプションは、カテゴリエンティティに新しいフィールドを追加することです(未完了のタスクの数、または両方が必要になる可能性があります-完了した数と未完了の数)。しかし、タスクのステータスを変更するたびに、番号も変更する必要があります。
正直なところ、どちらが速くてどちらが優れているかを考えなければなりません (だから私はこの質問をしています) が、最初のものは本当に複雑で理解しにくいようです。
この機能を実現するためのより良いアイデアがあるかどうか、またはない場合は、どの方法が優れているか、どの方法がより高速になるかなどを教えてください。質の高いコードを書くことを本当に学びたいです。:)
事前にどうもありがとうございました!