我有这样的疑问:

Time_Sheet_Details.findAll({
      include: [
          {
              model: timesheetNotesSubcon,
              required: false,
              attributes:["note","file_name", "id", "working_hrs", "timestamp", "has_screenshot", "notes_category", "userid"],
          },
          {
              model: Timesheet,
              attributes:["id","leads_id","userid","subcontractors_id"],
              where:  clientWhere, // Client
              include:[
                  {
                      model: Lead_Info, attributes:["id","fname","lname","email","hiring_coordinator_id","status"],
                      where:  scWhere, // SC
                      include:[{
                          model: adminInfoSchema,
                          required: false,
                          attributes:["admin_id","admin_fname", "admin_lname", "admin_email", "signature_contact_nos", "signature_company"],
                      }]

                  },
                  {
                      model:Personal_Info,attributes:["userid","fname","lname","email"],
                  }
              ]
          }],
      where: {
          reference_date: filters.reference_date
      },
      order:[
          ["id","DESC"]
      ],
      offset:((page-1)*limit),
      limit : limit,
      subQuery:false

  }).then(function(foundObject){
      willFulfillDeferred.resolve(foundObject);
  });

我的设置是我有一个Timesheet有一个TimesheetDetails有许多timesheetNotesSubcon。我要把所有的人都带到一起。
它工作得很好,但是如果我只想获取那些TimesheetDetailstimesheetNotesSubcon记录,并且这些记录的timesheetNotesSubcon等于或大于1,那么所有timesheetNotesSubcon结果为零的TimesheetDetails将不会被获取。

最佳答案

您需要制作包含的模型required

Time_Sheet_Details.findAll({
  include: [
      {
          model: timesheetNotesSubcon,
          required: true,
...

09-25 17:34