Closed kokovtsev closed 11 years ago
а в правилах модели они указаны как обязательные (что вполне логично)
Эти данные не требуют валидации, т.к. не поступают от пользователя, ими полностью управляет расширение. От результата валидации в данном случае не будет зависеть ничего, это просто бессмысленная проверка. Таким образом вполне логично что валидаторов для полей leftAttribute, rightAttribute и levelAttribute быть НЕ должно.
А вообще в документации четко написано по этому поводу:
There is no need to validate fields specified in leftAttribute, rightAttribute, rootAttribute and levelAttribute options. Moreover, there could be problems if there are validation rules for these. Please check if there are no rules for fields mentioned in model's rules() method.
При попытке создать корень при помощи следующего кода:
ничего не происходит. Проблема в том, что по умолчанию метод saveNode() вызывает валидацию модели ДО того, как заполняются поля leftAttribute, rightAttribute и levelAttribute, а в правилах модели они указаны как обязательные (что вполне логично).