MCPcopy Create free account
hub / github.com/cloudreve/cloudreve / querySpec

Method querySpec

ent/metadata_query.go:442–483  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

440}
441
442func (mq *MetadataQuery) querySpec() *sqlgraph.QuerySpec {
443 _spec := sqlgraph.NewQuerySpec(metadata.Table, metadata.Columns, sqlgraph.NewFieldSpec(metadata.FieldID, field.TypeInt))
444 _spec.From = mq.sql
445 if unique := mq.ctx.Unique; unique != nil {
446 _spec.Unique = *unique
447 } else if mq.path != nil {
448 _spec.Unique = true
449 }
450 if fields := mq.ctx.Fields; len(fields) > 0 {
451 _spec.Node.Columns = make([]string, 0, len(fields))
452 _spec.Node.Columns = append(_spec.Node.Columns, metadata.FieldID)
453 for i := range fields {
454 if fields[i] != metadata.FieldID {
455 _spec.Node.Columns = append(_spec.Node.Columns, fields[i])
456 }
457 }
458 if mq.withFile != nil {
459 _spec.Node.AddColumnOnce(metadata.FieldFileID)
460 }
461 }
462 if ps := mq.predicates; len(ps) > 0 {
463 _spec.Predicate = func(selector *sql.Selector) {
464 for i := range ps {
465 ps[i](selector)
466 }
467 }
468 }
469 if limit := mq.ctx.Limit; limit != nil {
470 _spec.Limit = *limit
471 }
472 if offset := mq.ctx.Offset; offset != nil {
473 _spec.Offset = *offset
474 }
475 if ps := mq.order; len(ps) > 0 {
476 _spec.Order = func(selector *sql.Selector) {
477 for i := range ps {
478 ps[i](selector)
479 }
480 }
481 }
482 return _spec
483}
484
485func (mq *MetadataQuery) sqlQuery(ctx context.Context) *sql.Selector {
486 builder := sql.Dialect(mq.driver.Dialect())

Callers 2

sqlAllMethod · 0.95
sqlCountMethod · 0.95

Calls

no outgoing calls

Tested by

no test coverage detected