mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-04 17:21:39 +09:00
Add notnull property to <group> tag in conditions
This commit is contained in:
parent
fda92b368d
commit
6e325526c8
5 changed files with 43 additions and 6 deletions
|
|
@ -286,6 +286,7 @@ class DBQueryParser extends BaseParser
|
|||
$group->conditions = self::_parseConditions($tag);
|
||||
$group->pipe = strtoupper($attribs['pipe'] ?? '') ?: 'AND';
|
||||
$group->ifvar = $attribs['if'] ?? null;
|
||||
$group->not_null = ($attribs['notnull'] ?? false) ? true : false;
|
||||
$result[] = $group;
|
||||
}
|
||||
elseif ($name === 'query')
|
||||
|
|
|
|||
|
|
@ -10,4 +10,5 @@ class ConditionGroup
|
|||
public $conditions = array();
|
||||
public $pipe = 'AND';
|
||||
public $ifvar;
|
||||
public $not_null;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -580,6 +580,10 @@ class Query extends VariableBase
|
|||
{
|
||||
$result .= ($result === '' ? '' : (' ' . $condition->pipe . ' ')) . '(' . $condition_string . ')';
|
||||
}
|
||||
elseif ($condition->not_null)
|
||||
{
|
||||
throw new \Rhymix\Framework\Exceptions\QueryError('Condition group marked as NOT NULL must contain at least one valid condition');
|
||||
}
|
||||
}
|
||||
|
||||
// Simple condition
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue