私はGrails開発に不慣れです。
私はこのようなドメインクラスを持っています:
class DaySchedule {
Date Todaysdate
String startTime;
String endTime;
String task
int priority
boolean completed
static belongsTo = [ schedule : Schedule ]
}
いくつかのテストデータでブートストラップしました。今、次の条件でクエリを実行したいと思います:
- 特定の に属する
task
( に格納されている)それぞれを選択する必要があります。bootstrap.groovy
Todaysdate
たとえば、次のステートメントが my にある場合BootStrap.groovy
:
//other codes
def daySchedule3 = new DaySchedule(Todaysdate:new Date(),
startTime:"6pm",endTime:"10pm",
task:"ReaD git...",completed:false)
def daySchedule4 = new DaySchedule(Todaysdate:new Date()+1,
startTime:"10am",endTime:"12pm",
task:"Read MySQL....",completed:false)
明らかにtask
、は 1 日にReaD git...
属します (これは、私が通っnew Date()
た今日です)。
これらを見つけるために、次のような部分的な解決策を思いつきました。
def allTasks = DaySchedule.findAllByTaskIsNotNull()
def dates = allTasks.collect { it.Todaysdate }
def tasks = dates.collect {
def queryParameter = new DaySchedule(Todaysdate:it)
def todaysWork = DaySchedule.findAll(queryParameter)
todaysWork.task
}
このコードに問題があります。collectEntries
メソッドをdates
andで使用できなかったため、値を としてtasks
特定の日付 (つまり) のマップに変換しました。(これは私が試したものです!)dates
tasks
今、私は一人ぼっちです。dates
がどれにtasks
属しているかを推測する方法を見つけることができませんでした。
それに対する他の解決策はありますか?
前もって感謝します。