сделайте после переопределения переменной $model = Catergory::find() ... проверку на is_object() и вам станет все понятно, в какой момент возникает ошибка.
xFreake: сделайте выход из метода если is_object($model) === false . Как пострадает логика я не хочу разбираться, она у вас очень хромает, но ошибка исчезнет.