Unique
class Unique (View source)
Traits
Properties
protected string | $table | The table to run the query against. |
from DatabaseRule |
protected string | $column | The column to check on. |
from DatabaseRule |
protected array | $wheres | The extra where clauses for the query. |
from DatabaseRule |
protected array | $using | The array of custom query callbacks. |
from DatabaseRule |
protected mixed | $ignore | The ID that should be ignored. |
|
protected string | $idColumn | The name of the ID column. |
Methods
Apply the callback if the given "value" is (or resolves to) truthy.
Apply the callback if the given "value" is (or resolves to) falsy.
Create a new rule instance.
Resolves the name of the table from the given string.
Set a "where" constraint on the query.
Set a "where not null" constraint on the query.
Ignore soft deleted models during the existence check.
Only include soft deleted models during the existence check.
Ignore the given ID during the unique check.
Ignore the given model during the unique check.
Convert the rule to a validation string.
Details
$this|TWhenReturnType
when($value = null, callable $callback = null, callable $default = null)
Apply the callback if the given "value" is (or resolves to) truthy.
$this|TUnlessReturnType
unless($value = null, callable $callback = null, callable $default = null)
Apply the callback if the given "value" is (or resolves to) falsy.
void
__construct(string $table, string $column = 'NULL')
Create a new rule instance.
string
resolveTableName(string $table)
Resolves the name of the table from the given string.
$this
where(Closure|string $column, Arrayable|array|string|int|bool|null $value = null)
Set a "where" constraint on the query.
$this
whereNot(string $column, Arrayable|array|string $value)
Set a "where not" constraint on the query.
$this
whereNull(string $column)
Set a "where null" constraint on the query.
$this
whereNotNull(string $column)
Set a "where not null" constraint on the query.
$this
whereIn(string $column, Arrayable|array $values)
Set a "where in" constraint on the query.
$this
whereNotIn(string $column, Arrayable|array $values)
Set a "where not in" constraint on the query.
$this
withoutTrashed(string $deletedAtColumn = 'deleted_at')
Ignore soft deleted models during the existence check.
$this
onlyTrashed(string $deletedAtColumn = 'deleted_at')
Only include soft deleted models during the existence check.
$this
using(Closure $callback)
Register a custom query callback.
array
queryCallbacks()
Get the custom query callbacks for the rule.
protected string
formatWheres()
Format the where clauses.
$this
ignore(mixed $id, string|null $idColumn = null)
Ignore the given ID during the unique check.
$this
ignoreModel(Model $model, string|null $idColumn = null)
Ignore the given model during the unique check.
string
__toString()
Convert the rule to a validation string.