OrderedRequest
public protocol OrderedRequest
The protocol for all requests that be ordered.
-
order(_:)
Default implementationCreates a request with the provided orderings promise.
// SELECT * FROM player ORDER BY name var request = Player.all() request = request.order { _ in [Column("name")] }
Any previous ordering is replaced:
// SELECT * FROM player ORDER BY name request .order{ _ in [Column("email")] } .reversed() .order{ _ in [Column("name")] }
Default Implementation
Creates a request with the provided orderings.
// SELECT * FROM player ORDER BY name var request = Player.all() request = request.order(Column("name"))
Any previous ordering is replaced:
// SELECT * FROM player ORDER BY name request .order(Column("email")) .reversed() .order(Column("name"))
Creates a request with the provided orderings.
// SELECT * FROM player ORDER BY name var request = Player.all() request = request.order(Column("name"))
Any previous ordering is replaced:
// SELECT * FROM player ORDER BY name request .order(Column("email")) .reversed() .order(Column("name"))
Declaration
Swift
func order(_ orderings: @escaping (Database) throws -> [SQLOrderingTerm]) -> Self
-
Creates a request that reverses applied orderings.
// SELECT * FROM player ORDER BY name DESC var request = Player.all().order(Column("name")) request = request.reversed()
If no ordering was applied, the returned request is identical.
// SELECT * FROM player var request = Player.all() request = request.reversed()
Declaration
Swift
func reversed() -> Self
-
order(sql:arguments:)
Extension methodCreates a request with the provided sql used for sorting.
// SELECT * FROM player ORDER BY name var request = Player.all() request = request.order(sql: "name")
Any previous ordering is replaced:
// SELECT * FROM player ORDER BY name request .order(sql: "email") .order(sql: "name")
Declaration
Swift
public func order(sql: String, arguments: StatementArguments? = nil) -> Self